@font-face是CSS3中的一个模块,他主要是把自己定义的Web字体嵌入到你的网页中,随着@font-face模块的出现,我们在Web的开发中使用字体不怕只能使用Web安全字体,你们当中或许有许多人会不自然的问,这样的东西IE能支持吗?当我告诉大家@font-face这个功能早在IE4就支持了你肯定会感到惊讶。我的Blog就使用了许多这样的自定义Web字体,比如说首页的Logo,Tags以及页面中的手写英文体,很多朋友问我如何使用,能让自己的页面也支持这样的自定义字体,一句话这些都是@font-face实现的,为了能让更多的朋友知道如何使用他,今天我主要把自己的一点学习过程贴上来和大家分享。
代码语言:javascript复制@font-face {
font-family: 'YourWebFontName';
src:url('fontName.eot');
src:local(''),
url('fontName.eot?#iefix') format('embedded-opentype'),
url('fontName.woff') format('woff'),
url('fontName.ttf') format('truetype'),
url('fontName.svg#webfontOTINA1xY') format('svg');
font-weight:normal;
font-style:normal;
}
在上述代码中YourWebFontName指的是你要定义的字体名称,即后面font-family使用的名称,fontName指的是你的字体文件的名称。
说到浏览器对@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 】。
从上面几个浏览器的支持性可以看出如果想兼容主流浏览器但是一个字体文件肯定是不行的了,需要多个字体文件来配合使用以达到兼容的效果。