CSS3用@font-face实现自定义英文字体


Posted in HTML / CSS onSeptember 23, 2013

现在CSS3已经很流行了。传说中的CSS3基本上什么都可以,那么CSS3中可不可以自定义英文字体呢?答案是非常可以。用@font-face即可实现自定义英文字体,下面咱们一起去看看吧。

1、语法规则

复制代码
代码如下:

@font-face {
font-family: 自定义的字体名称;
src: 自定义的字体的存放路径;
font-weight: normal;是否为粗体
font-style: normal;定义字体样式,如斜体
}

2、取值说明

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

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

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

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

3、各个浏览器需要字体的格式

(1)TureTpe(.ttf)格式:

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

(2)OpenType(.otf)格式:

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

(3)Web Open Font Format(.woff)格式:

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

(4)Embedded Open Type(.eot)格式:

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

(5)SVG(.svg)格式:

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

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

4、综合写法

复制代码
代码如下:

@font-face {
font-family: 'YourWebFontName';
/* IE9 Compat Modes */
src: url('YourWebFontName.eot');
/* IE6-IE8 */
src: url('YourWebFontName.eot?#iefix') format('embedded-opentype'),
/* Modern Browsers */
url('YourWebFontName.woff') format('woff'),
/* Safari, Android, iOS */
url('YourWebFontName.ttf') format('truetype'),
/* Legacy iOS */
url('YourWebFontName.svg#YourWebFontName') format('svg');
}

5、获取字体

(1)去一些下载字体的网站进行下载你想要的英文字体

(2)然后去这里→http://www.fontsquirrel.com/tools/webfont-generator获取所需格式

(3)进入上面的网址的界面
CSS3用@font-face实现自定义英文字体
如果你进入页面没有看到上图,你可以直接点击导航:
CSS3用@font-face实现自定义英文字体
如果你看到了上面的界面,那就好办了,我们来看如何应用这个工具生成@font-face需要的各种字体,先把我们刚才下载的字体上传上去:
CSS3用@font-face实现自定义英文字体
上传后按下图所示操作:
CSS3用@font-face实现自定义英文字体
现在从Font Squirrel下载下来的文件已经保存在你本地的电脑上了,接着只要对他进行解压缩,你就能看到文件列表如下所示:
CSS3用@font-face实现自定义英文字体
解压缩出来的文件格式,里面除了@font-face所需要的字体格式外,还带有一个DEMO文件,如果你不清楚的也可以参考下载下来的DEMO文件,我在这里不对DEMO说明问题,我主要是给大家介绍如何把下载下来的文件有价值的运用到我们的项目中。

最后在提醒一下,使用@font-face别的可以忘了,但千万不能忘生成各种格式的字体,因为这样能帮助你兼容各个浏览器。最后只得注意的是,如果你的项目中是英文网站,而且项目中可以用这种特殊字体效果,但是你是中文网站,我觉得还是使用图片比较合适。

@font-face就为大家介绍到这里,更多CSS3的事儿尽请关注本blog。若有啥建议也请在下面留言哟,我会努力改正,力求最好的。

HTML / CSS 相关文章推荐
CSS3 伪类选择器 nth-child()说明
Jul 10 HTML / CSS
基于css3实现漂亮便签样式
Mar 18 HTML / CSS
css3 iphone玻璃透明气泡完美实现
Mar 20 HTML / CSS
CSS3网格的三个新特性详解
Apr 04 HTML / CSS
纯css3实现效果超级炫的checkbox复选框和radio单选框
Sep 01 HTML / CSS
css3 clip实现圆环进度条的示例代码
Feb 07 HTML / CSS
CSS3下的渐变文字效果实现示例
Mar 02 HTML / CSS
浅谈CSS3 动画卡顿解决方案
Jan 02 HTML / CSS
HTML5 device access 设备访问详解
May 24 HTML / CSS
HTML5 新事件 小结
Jul 16 HTML / CSS
有关HTML5中背景音乐的自动播放功能
Oct 16 HTML / CSS
详解三种方式实现平滑滚动页面到顶部的功能
Apr 23 HTML / CSS
CSS3媒体查询(Media Queries)介绍
Sep 12 #HTML / CSS
利用CSS3的特性改变文本选中时的颜色
Sep 11 #HTML / CSS
css3进行截取替代js的substring
Sep 02 #HTML / CSS
CSS3制作ajax loader icon实现思路及代码
Aug 25 #HTML / CSS
css3学习心得分享
Aug 19 #HTML / CSS
CSS3实现的闪烁跳跃进度条示例(附源码)
Aug 19 #HTML / CSS
css3实现背景图片拉伸效果像桌面壁纸一样
Aug 19 #HTML / CSS
You might like
zend框架实现支持sql server的操作方法
2016/12/08 PHP
详解php与ethereum客户端交互
2018/04/28 PHP
PHP发送邮件确认验证注册功能示例【修改别人邮件类】
2019/11/09 PHP
关于javascript中的parseInt使用技巧
2009/09/03 Javascript
jQuery获取文本节点之 text()/val()/html() 方法区别
2011/03/01 Javascript
javascript中类的定义方式详解(四种方式)
2015/12/22 Javascript
jquery及js实现动态加载js文件的方法
2016/01/21 Javascript
基于jquery编写的放大镜插件
2016/03/23 Javascript
JavaScript浮点数及运算精度调整详解
2016/10/21 Javascript
微信小程序 获取相册照片实例详解
2016/11/16 Javascript
jQuery实现模拟flash头像裁切上传功能示例
2016/12/11 Javascript
Vuejs 用$emit与$on来进行兄弟组件之间的数据传输通信
2017/02/23 Javascript
jquery实现图片平滑滚动详解
2017/03/22 jQuery
浅析node.js的模块加载机制
2018/05/25 Javascript
分享5个好用的javascript文件上传插件
2018/09/16 Javascript
ES6扩展运算符和rest运算符用法实例分析
2020/05/23 Javascript
vue之封装多个组件调用同一接口的案例
2020/08/11 Javascript
vue中activated的用法
2021/01/03 Vue.js
[01:34:42]NAVI vs EG 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
Python基于回溯法子集树模板解决野人与传教士问题示例
2017/09/11 Python
Python中的浮点数原理与运算分析
2017/10/12 Python
Python中static相关知识小结
2018/01/02 Python
python3实现名片管理系统
2020/11/29 Python
Django生成PDF文档显示在网页上以及解决PDF中文显示乱码的问题
2019/07/04 Python
react+django清除浏览器缓存的几种方法小结
2019/07/17 Python
浅析Python+OpenCV使用摄像头追踪人脸面部血液变化实现脉搏评估
2019/10/17 Python
python将四元数变换为旋转矩阵的实例
2019/12/04 Python
python求最大公约数和最小公倍数的简单方法
2020/02/13 Python
浅谈HTML5 defer和async的区别
2016/06/07 HTML / CSS
英国网上购买肉类网站:Great British Meat
2018/10/17 全球购物
Simons官方网站:加拿大时尚零售商
2020/02/20 全球购物
校园歌咏比赛主持词
2014/03/18 职场文书
总结表彰大会主持词
2014/03/26 职场文书
冲出亚马逊观后感
2015/06/03 职场文书
公司员工宿舍管理制度
2015/08/07 职场文书
处世之道:关于真诚相待的名言推荐
2019/12/02 职场文书