zoukankan      html  css  js  c++  java
  • CSS进阶(十八)@font-face

    @font-face {
     font-family: 'example';
     src: url(example.ttf);
     font-style: normal;
     font-weight: normal;
     unicode-range: U+0025-00FF;
     font-variant: small-caps;
     font-stretch: expanded;
     font-feature-settings:"liga1" on;
    } 

    font-variant、font-stretch 和 font-featuresettings专门为英文设计

    src 如果是使用系统安装字体, 则使用 local()功能符;如果是使用外链字体,则使用 url()功能符

    font-weight:normal 和 font-style:normal,如果你 没有同字体名的多字体设置,则它就是多余的

    format()功能符的作用是让浏览器提前知道字体的格式,以决定是否需要加载这个字体,而 不是加载完了之后再自动判断

    font-style 和 font-weight 规则类似,在同名字体中选择不同字重和样式的字体

    font-weight 被委以重任来实现“响应式图标”

    unicode-range 的作用是可以让特定的字符或者特定范围的字符使用指定的字体

    字体图标技术的原理

    替换对应Unicode编码的内容

    弊端

    (1)原始字符和生成的字符差距大,加载缓慢时能够看到变化效果,解决方案:内联字体文件

    (2)原始字符和生成的字符x-height不一样,会出现闪动

    (3)原始字符的 ch 宽度,也就是水平占据的宽度和最终的图形也是不一样的,会出现晃动

    解决

    设置指定宽度

    .icon {
     display: inline-block;
     width: 20px;
     text-align: center;
     font-family: ICON;
    } 

    使用工具生成图标字体

    (1)纯路径,纯矢量,不要有 base64 内联图形。

    (2)使用填充而非描边,也尽量避免使用一些高级的路径填充覆盖技巧。

    (3)宽高尺寸最好都大于 200,因为字体生成的时候,坐标值会四舍五入,SVG 尺寸过小 会导致坐标取值偏差较大,使最终的图标不够精致。

  • 相关阅读:
    linux利用yum下载rpm离线包
    Struts Spring Plugin注意点
    Spring 对没有实现接口的类使用aspect的时候,可以使用CGLIB
    Spring HibernateTemplate
    Spring 声明式事务管理
    Spring 配置dataSource和sessionFactory
    Spring 配置中的 ${}
    Srping AOP xml方式
    Spring AOP 面向切面编程相关注解
    Spring 常用注入注解(annotation)和其对应xml标签
  • 原文地址:https://www.cnblogs.com/goOtter/p/9822130.html
Copyright © 2011-2022 走看看