具有粗细和样式属性的字体选择器-浏览器将忽略除最后一个选择器以外的所有选择器

埃里克·卡莱尔

我正在使用同一个家族的多种网络字体,以避免浏览器以假粗体和呈现faux-italics在声明选择器时,我为所有font-family属性设置了相同的名称,并在使用font-weightfont-style进行区分。

这是我用于Exo的示例。

@font-face {
    font-family: "exo";
    src: url("../fonts/exo/exo-regular.eot");
    src: url("../fonts/exo/exo-regular.eot?#iefix") format("embedded-opentype"),
    url("../fonts/exo/exo-regular.woff2") format("woff2"), 
    url("../fonts/exo/exo-regular.woff") format("woff"), 
    url("../fonts/exo/exo-regular.ttf") format("truetype"), 
    url("../fonts/exo/exo-regular.svg#exo") format("svg");
    font-weight: "normal";
    font-style: "normal";
}

@font-face {
    font-family: "exo";
    src: url("../fonts/exo/exo-bold.eot");
    src: url("../fonts/exo/exo-bold.eot?#iefix") format("embedded-opentype"),
    url("../fonts/exo/exo-bold.woff2") format("woff2"),
    url("../fonts/exo/exo-bold.woff") format("woff"),
    url("../fonts/exo/exo-bold.ttf") format("truetype"),
    url("../fonts/exo/exo-bold.svg#exo") format("svg");
    font-weight: "bold";
    font-style: "normal";
}

p {
    font-family: "exo", sans-serif;
}

我已经确认段落标记不会从另一个选择器继承字体粗细。

从上述CSS中,我期望<p/>标签具有正常的字体粗细。而是所有的实例<p/>均为粗体。检查浏览器检查器的字体粗细时,它会显示为“正常”。

我还使用带有Web字体的Roboto来处理所有常规,粗体,斜体和bold-italics@font-face列出的最后一个选择器是默认使用的选择器。

我已经看到了使用不同的字体系列名称(例如font-family: "exo-bold"来实现此方法的不同方法,但我不必这样做。我的目标是:

  1. 使用多个Web字体文件表示在不同状态(例如字体exo-regular.woffexo-bold.woff)。
  2. font-family对于相同字体的所有粗细和样式变体使用相同的名称。
  3. 包含font-weightfont-style属性以标识这些变体。
  4. 使用其他CSS或标记(如)设置权重和样式<strong>

好像我以前已经做过,而且奏效了。谁能发现我的方法中存在错误?

人们

您的font-weightfont-style规则中不应使用引号这将起作用:

@font-face {
    font-family: "exo";
    /* files for normal weight */
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: "exo";
    /* files for bold weight */
    font-weight: bold;
    font-style: normal;
}

实际上,在CSS中,仅在字体名称或文件名中包含空格或其他保留字符时才需要使用引号。所以这应该工作:

<!-- language: lang-css -->
@font-face {
    font-family: exo;
    src: url(../fonts/exo/exo-regular.eot);
    src: url(../fonts/exo/exo-regular.eot?#iefix) format(embedded-opentype),
         url(../fonts/exo/exo-regular.woff2) format(woff2), 
         url(../fonts/exo/exo-regular.woff) format(woff), 
         url(../fonts/exo/exo-regular.ttf) format(truetype), 
         url(../fonts/exo/exo-regular.svg#exo) format(svg);
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: exo;
    src: url(../fonts/exo/exo-bold.eot);
    src: url(../fonts/exo/exo-bold.eot?#iefix) format(embedded-opentype),
         url(../fonts/exo/exo-bold.woff2) format(woff2),
         url(../fonts/exo/exo-bold.woff) format(woff),
         url(../fonts/exo/exo-bold.ttf) format(truetype),
         url(../fonts/exo/exo-bold.svg#exo) format(svg);
    font-weight: bold;
    font-style: normal;
}

p {
    font-family: exo, sans-serif;
}

我个人仅在CSS无法使用时使用引号。

但是您永远不要引用普通的CSS术语,因为它们会停止工作。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

选择除第一个N以外的所有子级-CSS选择器

来自分类Dev

最后一个选择器

来自分类Dev

CSS“除了最后一个”选择器的所有问题

来自分类Dev

从具有@ at-root的另一个选择器中选择SASS父选择器

来自分类Dev

浏览器是否忽略CSS选择器?

来自分类Dev

为什么浏览器会忽略我CSS文件中的第一个选择器?

来自分类Dev

将具有特定属性和值的所有CSS选择器与RegEx匹配

来自分类Dev

如果取消选择一个输入,如何取消选择“所有”选择器

来自分类Dev

Jsoup选择器-如何选择<div>元素内的所有<p>元素,最后一个<p>元素除外?

来自分类Dev

带有一个选择器的多个TextView

来自分类Dev

jQuery选择器查找最后一个元素

来自分类Dev

是否有一个可以根据样式选择元素的可靠选择器?

来自分类Dev

另一个选择器样式内的CSS选择器

来自分类Dev

通过CSS选择器选择所有HTML中的标记的第一个和最后一个出现

来自分类Dev

通过CSS选择器选择所有HTML中的标记的第一个和最后一个出现

来自分类Dev

选择器,用于获取具有特定属性和类的所有标签

来自分类Dev

如何将CSS星形选择器*限制为一个类和所有后代?

来自分类Dev

javascript中是否有任何内置函数可以使用类选择器或元素选择器来选择最后一个元素?

来自分类Dev

css选择器:除中的所有

来自分类Dev

css选择器:除中的所有

来自分类Dev

如何测试选择器中除 Jest 中的第一个孩子之外的所有孩子

来自分类Dev

将类选择器与属性选择器组合

来自分类Dev

所有标签后代的选择器

来自分类Dev

所有div的jQuery选择器

来自分类Dev

具有多个选择器的on方法

来自分类Dev

如何在浏览器中使用一个驱动器文件选择器?

来自分类Dev

如何在浏览器中使用一个驱动器文件选择器?

来自分类Dev

具有类的所有按钮的 CSS 选择器

来自分类Dev

将具有RegExp的CSS选择器匹配在浏览器中不起作用

Related 相关文章

  1. 1

    选择除第一个N以外的所有子级-CSS选择器

  2. 2

    最后一个选择器

  3. 3

    CSS“除了最后一个”选择器的所有问题

  4. 4

    从具有@ at-root的另一个选择器中选择SASS父选择器

  5. 5

    浏览器是否忽略CSS选择器?

  6. 6

    为什么浏览器会忽略我CSS文件中的第一个选择器?

  7. 7

    将具有特定属性和值的所有CSS选择器与RegEx匹配

  8. 8

    如果取消选择一个输入,如何取消选择“所有”选择器

  9. 9

    Jsoup选择器-如何选择<div>元素内的所有<p>元素,最后一个<p>元素除外?

  10. 10

    带有一个选择器的多个TextView

  11. 11

    jQuery选择器查找最后一个元素

  12. 12

    是否有一个可以根据样式选择元素的可靠选择器?

  13. 13

    另一个选择器样式内的CSS选择器

  14. 14

    通过CSS选择器选择所有HTML中的标记的第一个和最后一个出现

  15. 15

    通过CSS选择器选择所有HTML中的标记的第一个和最后一个出现

  16. 16

    选择器,用于获取具有特定属性和类的所有标签

  17. 17

    如何将CSS星形选择器*限制为一个类和所有后代?

  18. 18

    javascript中是否有任何内置函数可以使用类选择器或元素选择器来选择最后一个元素?

  19. 19

    css选择器:除中的所有

  20. 20

    css选择器:除中的所有

  21. 21

    如何测试选择器中除 Jest 中的第一个孩子之外的所有孩子

  22. 22

    将类选择器与属性选择器组合

  23. 23

    所有标签后代的选择器

  24. 24

    所有div的jQuery选择器

  25. 25

    具有多个选择器的on方法

  26. 26

    如何在浏览器中使用一个驱动器文件选择器?

  27. 27

    如何在浏览器中使用一个驱动器文件选择器?

  28. 28

    具有类的所有按钮的 CSS 选择器

  29. 29

    将具有RegExp的CSS选择器匹配在浏览器中不起作用

热门标签

归档