@font-face使用在线字体
@font-face规则在CSS3规范中属于字体模块,该规则的推出对于网页设计来说是一个革命性的进步。在传统设计中,设计师不敢使用各种艺术字体类型,甚至是常规字体也需要慎重使用。因为设计师必须考虑每位浏览者的系统中是否安装了所有字体。有了@font-face规则,这个顾虑就可以放下了:只要在互联网上指定一种字体类型源,而不管用户电脑是否安装该字体,设计的网页都能够正确显示。
用较为专业的话来讲,@font-face能够加载服务器端的字体文件,让客户端浏览器显示客户端没有安装的字体。如果没有@font-face规则,浏览器只能够在客户端系统中寻找指定字体,这就给网页设计带来了很多限制,妨碍了设计师的创意设计,也就无法展现丰富多彩的字体艺术。
@font-face规则的语法格式如下:
@font-face { <font-description> }
@font-face规则的选择符是固定的,用来引用服务端的字体文件。<font-description>是一个属性名值对,格式类似如下样式:
description: value;
description: value;
description: value;
{...}
description: value;
属性及其取指说明如下:
- font-family:设置文本的字体名称。
- font-style:设置文本样式。
- font-variant:设置文本是否大小写。
- font-weight:设置文本的粗细。
- font-stretch:设置文本是否横向拉伸变形。
- font-size:设置文本字体大小。
- src:设置自定义字体的相对路径或者绝对路径。
需要注意的是,低版本IE浏览器只支持微软自有的.eot(Emberdded)字体样式,而其他浏览器都不支持这一格式。不过,从Safari3.1开始,网页重构工程师已经可以设置.ttf(TrueType)和.oof(OpenType)两种字体作为自定义字体了。
下面我们来看一个简单的示例:
/*引入外部字体文件*/
@font-face{
font-family: myFirstFont;
/*eot格式兼容IE*/
src:url(fonts/AdineKirnber.eot);
/*ttf格式兼容非IE*/
src:url(fonts/AdineKirnber.ttf);
}
h1{
font-family: myFirstFont,verdana,sans-serif;
font-size:4em;
}
运行效果如下:
注意:嵌入外部字体的做法对于中文网站来说不太适用。因为一个中文字体文件小的也有几M,大的有十几M,这么大的字体,其下载过程让人难以忍受,同时服务器也不能接受如此频繁的下载请求。所以对于中文来说,如果只是想标题使用特殊字体,最好设计成图片。由于英文字体只有几十kb,与一张图片的大小差不多,如果有大量的文字需要使用该字体,存储、带宽方面就划算多了。
最后,附上两个在线字体转换格式的网站:
font2web:http://www.font2web.com/
freefontconverter:http://www.freefontconverter.com/
@font-face使用在线字体的更多相关文章
- CSS在线字体库,外部字体的引用方法
目录: 1:CSS家族五大字体 2:360和谷歌外部字体引用方法 3:谷歌外部字体引用方法详解 4:@font-face用法详解 一: {font-family:serif,sans-serif,fa ...
- CSS在线字体库,外部字体的引用方法@font-face
@font-face是CSS3中的一个模块,他主要是把自己定义的Web字体嵌入到你的网页中,随着@font-face模块的出现,我们在Web的开发中使用字体不怕只能使用Web安全字体,你们当中或许有许 ...
- Font Combiner – 自定义网页字体和图标生成工具
Font Combiner 是一个功能丰富的 Web 字体生成工具和字体改进工具,提供字距调整.构造子集.各种提示选项和自定义字体字形组合.您可以生成您自己的自定义字体的格式和文件大小. 另外还有成千 ...
- CSS引入本地字体与在线字体
有些时候为了强调某些文字,需要使用一些比较特别的字体,CSS中现在也可以比较方便的引入字体了,如下: /* 定义字体 */ @font-face{ font-family: Arista2; src: ...
- 如何在印刷品中使用遵循SIL Open Font License协议的字体
如何在印刷品中使用遵循SIL Open Font License协议的字体 昨天在知乎看到了一个问题,( 如何在设计中声明字体开源许可证? - 知乎 (zhihu.com),恰好最近在研究一些开源协议 ...
- html font后面跟多种字体
例子 body,div,dl,dt,dd,li,h1,h2,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td { margin: 0; pa ...
- Android Support Font 安卓系统支持字体(配图)
测试了一台安卓机器,发现所有字体显示都一样.
- 关于font awesome或Glyphicons字体图标不能正确显示的问题
此处讨论的是关于本地字体的安装和引进 实际操作经验中,某些网站模板设置的CSS, FONTS目录较深,如果按默认的路径设置,字体图标死活都不会显示. 解决办法是将FONTS目录,安装在网站根目录下 C ...
- moviepy音视频剪辑:TextClip.list(font)和search搜索字体报错UnicodeDecodeError:utf-8 codec cannott decode byte 问题
☞ ░ 前往老猿Python博文目录 ░ 在moviepy2.0.0.Dev版本中,执行如下语句: from moviepy.editor import * TextClip.search('gb', ...
随机推荐
- 11.python描述符---类的装饰器---@property
描述符1.描述符是什么:描述符本质就是一个新式类,在这个新式类中,至少实现了__get__(),__set__(),__delete__()这三个内置方法中的一个,描述符也被称为描述符协议(1):__ ...
- angular6新建项目
mkdir angular6project cd angular6project ng new demo 新建一个普通项目 ng new demo --routing 新建一个带路由的项 ...
- git 从分支上创建一个分支
相关连接: 创建于合并分支:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/00 ...
- PythonStudy——函数默认值
# 如果函数的默认参数的默认值为变量,在所属函数定义阶段一执行就被确定为当时变量存放的值 a = 100 def fn(num=a): a = 200 fn() 输出: 100 也就是说在函数调用的时 ...
- django 生产环境部署建议
参考django官方建议 一种优秀的作法是使用前缀/ws/来区分WebSocket连接和普通HTTP连接,以便修改配置后,使Channels更容易部署到生产环境中. 特别是对于大型站点,可以配置像ng ...
- Linux 开机启动 php socket
问题 php socket 服务在服务器重启后无法自动启动,需要添加开机启动脚本.有以下问题 开机延迟3分钟后,再启动socket服务 socket服务有3个模块需要按照先后顺序启动 registe ...
- Linux tmpwatch命令详解
Linux tmpwatch命令 Linux tmpwatch命令用于删除暂存文件. 执行tmpwatch指令可删除不必要的暂存文件,您可以设置文件超期时间,单位以小时计算 用法: tmpwatch ...
- freemarker语法介绍及其入门教程实例
# freemarker语法介绍及其入门教程实例 # ## FreeMarker标签使用 #####一.FreeMarker模板文件主要有4个部分组成</br>#### 1.文本,直接输 ...
- 承接AR定制AR项目外包(正规公司,内附案例)
京团队长年承接AR项目外包 咨询QQ:372900288 微信:liuxiang0884 以下是AR项目案例演示,索取更多案例请通过以上方式在线联系我们
- jenkins中如何实现执行脚本时的变量共享
1.主要是利用EnvInject Plugin插件,所以要首先安装插件,安装好后如下图: 2.然后在“增加构建步骤”中,插入一个“Execute Python script” 代码我用的python3 ...