博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于@font-face的一些问题
阅读量:7294 次
发布时间:2019-06-30

本文共 2237 字,大约阅读时间需要 7 分钟。

@font-face 能够加载服务器端的字体文件,让客户端显示客户端所没有安装的字体。【微软的IE 5已经是开始支持这个属性,但是只支持微软自有的.eot (Embedded Open Type) 格式,而其他浏览器直到现在都没有支持这一字体格式。然而,从Safari 3.1开始,网页重构工程师已经可以设置.ttf(TrueType)和.otf(OpenType)两种字体做为自定义字体了。

@font-face的语法规则:

@font-face {      font-family: 
; src:
[
][,
[
]]*; [font-weight:
]; [font-style:

如:

@font-face{    font-family:"playericons";    src:url(../font/fontello.eot);    src:url(../font/fontello.eot#iefix) format("embedded-opentype"),    url(../font/fontello.woff) format("woff"),    url(../font/fontello.ttf) format("truetype"),    url(../font/fontello.svg) format("svg");    font-weight:normal;    font-style:normal;}

参数说明:

取值说明

1、font-family:此值指的就是你自定义的字体名称,最好是使用你下载的默认字体,他将被引用到你的Web元素中的font-family。如“font-family:"playericons";”

2、source:此值指的是你自定义的字体的存放路径,可以是相对路径也可以是绝路径;

3、format:此值指的是你自定义的字体的格式,主要用来帮助浏览器识别,其值主要有以下几种类型:truetype,opentype,truetype-aat,embedded-opentype,avg等;

4、weight和style:这两个值大家一定很熟悉,weight定义字体是否为粗体,style主要定义字体样式,如斜体。

浏览器对@font-face的兼容问题,这里涉及到一个字体format的问题,因为不同的浏览器对字体格式支持是不一致的

一、TureTpe(.ttf)格式:

.ttf字体是Windows和Mac的最常见的字体,是一种RAW格式,因此他不为网站优化,支持这种字体的浏览器有【IE9+,Firefox3.5+,Chrome4+,Safari3+,Opera10+,iOS Mobile Safari4.2+】;

二、OpenType(.otf)格式:

.otf字体被认为是一种原始的字体格式,其内置在TureType的基础上,所以也提供了更多的功能,支持这种字体的浏览器有【Firefox3.5+,Chrome4.0+,Safari3.1+,Opera10.0+,iOS Mobile Safari4.2+】;

三、Web Open Font Format(.woff)格式:

.woff字体是Web字体中最佳格式,他是一个开放的TrueType/OpenType的压缩版本,同时也支持元数据包的分离,支持这种字体的浏览器有【IE9+,Firefox3.5+,Chrome6+,Safari3.6+,Opera11.1+】;

四、Embedded Open Type(.eot)格式:

.eot字体是IE专用字体,可以从TrueType创建此格式字体,支持这种字体的浏览器有【IE4+】;

五、SVG(.svg)格式:

.svg字体是基于SVG字体渲染的一种格式,支持这种字体的浏览器有【Chrome4+,Safari3.1+,Opera10.0+,iOS Mobile Safari3.2+】。

这就意味着在@font-face中我们至少需要.woff,.eot两种格式字体,甚至还需要.svg等字体达到更多种浏览版本的支持。

 

为了让更多的浏览器支持,建议写成如上的例子

里面的参数和语法大概清楚,还有个问题,就是去哪里获取到eot,.woff,.ttf,.svg这些字体格式呢?

第一步:下载所需要的字体,http://www.dafont.com/这个网站还不错。打开网页一看,一目了然,选择自己需要的字体,download下来;

下一步就是获取各个浏览器所支持的格式了,特殊字体已经在你的电脑中了,现在我们需要想办法获得@font-face所需的.eot,.woff,.ttf,.svg字体格式。要获取这些字体格式,我们同样是需要第三方工具或者软件来实现http://www.fontsquirrel.com/tools/webfont-generator

上传好,download 下来,会解压会发现:

打开demo文件

我们就可以直接使用了。如有错误之处,还请大家纠正

转载于:https://www.cnblogs.com/startmyways/p/3927049.html

你可能感兴趣的文章
Spring4+SpringMVC+MyBatis整合思路
查看>>
聊聊技术路线的选择
查看>>
Activiti6.0 java项目框架 spring5 SSM 工作流引擎 审批流程
查看>>
信息收集工具exiftool获取图片中的exif信息
查看>>
Android 依赖注入可以更简单 —— 新版本 Dagger 2 使用教学
查看>>
Kotlin 标准库中run、let、also、apply、with函数的用法和区别
查看>>
MIT课程笔记①丨因果关系定义及潜在结果分析框架
查看>>
简单算法题:leetcode-2 两数相加
查看>>
小猿圈讲解Java可以做什么?
查看>>
代理加盟哪家小程序开发公司好
查看>>
VUE Cookbook 系列:实现可配置组合表单
查看>>
从jQuery 入口方式写jQuery工具类库
查看>>
在iview项目中添加echarts3
查看>>
Dart基础语法
查看>>
chrome 插件开发心得
查看>>
把HTML转成PDF的4个方案及实现方法
查看>>
小程序自动化测试--测试3
查看>>
java springcloud版b2b2c社交电商spring cloud分布式微服务 (四) 断路器(Hystrix)
查看>>
java B2B2C Springboot电子商务平台源码-Feign设计原理
查看>>
canvas使用技巧大全
查看>>