@a06062125
2017-03-01T18:06:02.000000Z
字数 2209
阅读 472
css3
在网页设计中, 设计师会广泛应用图标来做示意, 图标比文字占空间少,也更形象易懂。 我们可以使用位图来展示图标, 也可以用webfont(比如大名鼎鼎的fontawesome)。
用位图大家都会,插个image标签就可以啦。 那webfont怎么用呢?
@font-face是CSS3中的一个模块,他主要是把自己定义的Web字体嵌入到你的网页中。
@font-face的语法规则请参考w3cplus: CSS3 @font-face
webfont可以通过设置font-size
, line-height
, font-color
来实现大小颜色的控制,在缩放时也不会失真。
所以当我们遇到了这样的设计图时, 就可以考虑是否要使用webfont替代位图了:
.ttf, .otf, .woff, .eot, .svg
)生成步骤请参考下文的 如何制作webfont
以fontawesome为例, 生成的webfont文件如下图:
https://github.com/FortAwesome/Font-Awesome/tree/master/fonts
@font-face
字体集,以及每个字体对应的content
编码;
// https://github.com/FortAwesome/Font-Awesome/tree/master/css
// 定义字体集
@font-face {
font-family: 'FontAwesome';
src: url('../fonts/fontawesome-webfont.eot?v=4.7.0');
src: url('../fonts/fontawesome-webfont.eot?#iefix&v=4.7.0') format('embedded-opentype'), url('../fonts/fontawesome-webfont.woff2?v=4.7.0') format('woff2'), url('../fonts/fontawesome-webfont.woff?v=4.7.0') format('woff'), url('../fonts/fontawesome-webfont.ttf?v=4.7.0') format('truetype'), url('../fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular') format('svg');
font-weight: normal;
font-style: normal;
}
// 定义字体公共类
.fa {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
// 具体的图标编码
.fa-home:before {
content: "\f015";
}
<i class='fa fa-home'></i>
设计师给出.psd文件后,生成webfont大概分为三个步骤
jpg,gif,png,bmp,svg
IconMoon的使用方式很简单,导入.svg矢量文件, 选中文件, 导出字体。
如何你熟悉photoshop的路径操作以及illstrator, 可以参考以下文章制作font文件