【CSS】font-weight设置为500显示不出加粗效果

问题出在操作系统上:

  • macOS 系统默认的华文黑体(STHeiti) 有七个矢量级别:Heavy/Bold/MediumP4/Regular/Thin/Light/UltraLightP2 ,它包含上面 CSS 中设定的 500 这个精度。

  • Windows 系统默认的宋体(simsun) 没有那么多级别。在缺少级别支持的前提下,CSS 会根据回退机制寻找一个类似的精度,结果就变成了400 (Normal)。


回退机制:

  • 如果指定的权重值不可用,则使用以下规则来确定实际呈现的权重:
  1. 如果指定的权重值在 400和 500之间(包括400和500):
    1. 按升序查找指定值与500之间的可用权重;
    2. 如果未找到匹配项,按降序查找小于指定值的可用权重;
    3. 如果未找到匹配项,按升序查找大于500的可用权重。
  2. 如果指定值小于400
    1. 按降序查找小于指定值的可用权重
    2. 如果未找到匹配项,按升序查找大于指定值的可用权重(先尽可能的小,再尽可能的大)。
  3. 如果指定值大于500
    1. 按升序查找大于指定值的可用权重
    2. 如果未找到匹配项,按降序查找小于指定值的可用权重(先尽可能的大,再尽可能的小)。
  • 以上策略意味着,如果一个字体只有 normal 和 bold 两种粗细值选择,指定粗细值为 100-500 时,实际渲染时将使用 normal,指定粗细值为 501-900 时,实际渲染时将使用 bold 。

你可能感兴趣的:(CSS,css,前端)