按照字体的描述方式来分:
点阵字体
矢量字体(轮廓字体)css
按照字体的表现形式来分:
衬线字体(serif):好比,宋体,Georgia,Times New Roman
非衬线字体(sans-serif):好比 Tahoma, Arial , 幼圆
其它字体:等宽字体(monospace),书写体(cursive),梦幻体(fantasy)ios
@font-face的取值有如下几个:
font-family:设置文本的字体名称。以后能够在定义字体的字体栈中使用这个名称。
font-style:设置文本样式
font-variant:设置文本是否大小写
font-weight:设置文本的粗细
font-stretch:设置文本是否横向拉伸变形
font-size:设置文本字体大小
src:设置自定义字体的相对路径或者绝对路径。
注意:此属性只能在@font-face规则里使用。css3
@font-face { font-family: "Bitstream Vera Serif Bold"; src: url("http://developer.mozilla.org/@api/deki/files/2934/=VeraSeBd.ttf"); }
不一样的浏览器会要求不一样的字体文件类型:
TrueType(TTF)和OpenType(OTF)字体文件在绝大多数的浏览器上都能正常工做。
IE4—IE8要求使用特殊的字体文件格式:嵌入式OpenType(EOT)
惟一可以在Safari上正常工做的字体文件格式就是SVG,SVG在chrome、Opera上也能正常工做,但在Firefox上不行。
WOFF的含义是Web开放字体格式。愈来愈多的浏览器都在添加对它的支持。
这些字体格式中的一些可以互相转换。
通常在font-face中都引入各个类型的字体文件以适配全部浏览器。web
/* 声明字体(图标字体) */ @font-face { font-family: 'webfont'; src: url('font/webfont.eot'); /* IE9 */ src: url('font/webfont.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ url('font/webfont.woff') format('woff'), /* chrome、firefox */ url('font/webfont.ttf') format('truetype'), /* chrome、firefox、opera、Safari、Android、IOS */ url('font/webfont.svg#webfont') format('svg'); /* ios 4.1 */ } .myfont { font-family: 'webfont'; /* 使用声明的字体 */ }
一、字体的中英文写法:chrome
咱们在操做系统中经常看到宋体、微软雅黑这样的字体名称,但实际上这只是字体的显示名称,而不是字体文件的名称,通常字体文件都是用英文命名的,如SimSun、Microsoft Yahei。在大多数状况下直接使用显示名称也能正确的显示,可是有一些用户的特殊设置会致使中文声明无效。
所以,保守的作法是使用字体的字体名称(英文)或者二者兼写。以下示例:segmentfault
font-family: STXihei, "Microsoft YaHei";
font-family: STXihei, "华文细黑", "Microsoft YaHei", "微软雅黑";
二、声明英文字体:api
绝大部分中文字体里都包含英文字母和数字,不进行英文字体声明是没有问题的,可是大多数中文字体中的英文和数字的部分都不是特别漂亮,因此建议也对英文字体进行声明。
因为英文字体中大多不包含中文,咱们能够先进行英文字体的声明,这样不会影响到中文字体的选择,所以优先使用最优秀的英文字体,中文字体声明则紧随其次。以下示例:浏览器
font-family: Arial, "Microsoft YaHei";
三、照顾不一样的操做系统:svg
英文、数字部分:在默认的操做系统中,Mac和Win都会带有Arial, Verdana, Tahoma等几个预装字体,从显示效果来看,Tahoma要比Arial更加清晰一些,所以字体设置Tahoma最好放到前面,当找不到Tahoma时再使用Arial;而在Mac中,还拥有一款更加漂亮的Helvetica字体,因此为了照顾Mac用户有更好的体验,应该更优先设置Helvetica字体;Android系统下默认的无衬线字体就能够接受,所以无需单独设置。最后,英文、数字字体的最佳写法以下:
font-family: Helvetica, Tahoma, Arial;
中文部分:在Win下,微软雅黑为大部分人最常使用的中文字体,因为不少人安装Office的缘故,Mac电脑中也会出现微软雅黑字体,所以把显示效果不错的微软雅黑加入到字体列表是个不错的选择;一样,为了保证Mac中更为优雅字体苹方(PingFang SC)、黑体-简(Heiti SC)、冬青黑体( Hiragino Sans GB )的优先显示,须要把这些字体放到中文字体列表的最前面;同时为了照顾到Linux操做系统的体验,还须要添加文泉驿微米黑字体。最后,中文字体部分最佳写法以下:
font-family: "PingFang SC", "Hiragino Sans GB", "Heiti SC", "Microsoft YaHei", "WenQuanYi Micro Hei";
中英文整合写法:wordpress
font-family: Helvetica, Tahoma, Arial, "Heiti SC", "Microsoft YaHei", "WenQuanYi Micro Hei";
font-family: Helvetica, Tahoma, Arial, "PingFang SC", "Hiragino Sans GB", "Heiti SC", "Microsoft YaHei", "WenQuanYi Micro Hei";
四、注意向下兼容
若是还须要考虑旧版本操做系统用户的话,不得不加上一些旧版操做系统存在的字体:Mac中的华文黑体、冬青黑体,Win中的黑体等。一样按照显示效果排列在列表后面,写法以下:
font-family: Helvetica, Tahoma, Arial, "PingFang SC", "Hiragino Sans GB", "Heiti SC", STXihei, "Microsoft YaHei", SimHei, "WenQuanYi Micro Hei";
加入了 STXihei(华文细黑)和 SimHei(黑体)。
五、补充字体族名称
字体族大致上分为两类:sans-serif(无衬线体)和serif(衬线体),当全部的字体都找不到时,咱们可使用字体族名称做为操做系统最后选择字体的方向。通常非衬线字体在显示器中的显示效果会比较好,所以咱们须要在最后添加 sans-serif,写法以下:。
font-family: Helvetica, Tahoma, Arial, "PingFang SC", "Hiragino Sans GB", "Heiti SC", "Microsoft YaHei", "WenQuanYi Micro Hei", sans-serif;
六、lang及charset
影响默认字体。
lang 属性规定元素内容的语言。
charset 属性能够经过任意元素上的 lang 属性来重写。