代码之家  ›  专栏  ›  技术社区  ›  stephenmurdoch

CSS@font-face-“src:local('')”是什么意思?

  •  125
  • stephenmurdoch  · 技术社区  · 16 年前

    @font-face 第一次从fontsquirrel下载了一个字体工具包

    他们建议在我的CSS中插入的代码是:

    @font-face {
        font-family: 'junctionregularRegular';
        src: url('Junction-webfont.eot');
        src: local('☺'), 
            url('Junction-webfont.woff') format('woff'), 
            url('Junction-webfont.ttf') format('truetype'), 
            url('Junction-webfont.svg#webfontoNEpZXy2') format('svg');
    }
    

    3 回复  |  直到 16 年前
        1
  •  95
  •   BoltClock    14 年前

    如果您阅读了FontSquirrel的字体面生成器中的注释,您将看到这是PaulIrish的一个gotcha。

    这是他演讲的节选 blog post


    还有。。关于 @font-face

    我现在推荐使用防弹笑脸,而不是原来的防弹语法。

    @font-face {
      font-family: 'Graublau Web';
      src: url('GraublauWeb.eot');
      src: local('☺'),
           url('GraublauWeb.woff') format('woff'), url('GraublauWeb.ttf') format('truetype');
    }
    

    smiley是一个更好的解决方案有几个原因:

    • Webkit+字体管理软件可以 搞砸当地的参考资料,比如 将字形转换为块。

    • 在OSX上,字体管理软件可能 试图访问 可访问的local()字体 在我的防弹柱上。 字体资源管理器X是 也知道会把其他事情搞砸 火狐。

    • 虽然不太可能,但你可以 引用local()字体 和你想的完全不同 不同的字体,相同的名称) 至少这是一个风险,而且你 将类型的控制权让给两者 浏览器和主机。这个 冒险可能不值得冒险 避免字体下载。

        2
  •  36
  •   Magne    7 年前

    local()是一个css黑客,用来转移IE6-8下载它不能使用的字体(它只能使用EOT格式的字体)。

    .eot 它将使用的格式(在问题的上一行定义)。笑脸只是为了确保不会有一个本地字体与该名称(字符组合)。

    http://nicewebtype.com/notes/2009/10/30/how-to-use-css-font-face/

        3
  •  -3
  •   logu    10 年前

    @最后一个src属性在CSS级联中优先,这意味着CSS将从下到上进行解析。