css字体样式font-style与font-weight区别

font-style控制倾斜,font-weight控制粗细。前者用normal/italic/oblique设置斜体,后者用normal/bold或100-900数值设置字重,两者可同时作用于文本,如em{font-style:italic;font-weight:bold}实现又斜又粗效果。

font-stylefont-weight 都是CSS中用于控制字体样式的属性,但它们的作用完全不同。下面分别说明它们的区别和用法。

font-style:控制字体的倾斜效果

这个属性主要用于设置文本是否以斜体显示。它有以下几个常用值:
  • normal:默认值,文本正常显示,不倾斜
  • italic:使用字体的斜体版本(如果字体支持)
  • oblique:将普通字形倾斜显示,即使字体没有真正的斜体,浏览器也会模拟倾斜
例如:
p {
  font-style: italic;
}
这会让段落文字显示为斜体。

font-weight:控制字体的粗细程度

这个属性用来设置文字的粗细,常见取值包括:
  • normal:等同于400,标准粗细
  • bold:等同于700,加粗显示
  • 100~900:数字形式的粗细级别,400为常规,700以上为粗体
注意:能否显示中间值(如300、500)取决于所用字体是否提供对应字重。 例如:
h1 {
  font-weight: bold;
}
span {
  font-weight: 300;
}

核心区别总结

  • font-style 管的是“斜不斜”——影响的是文字的倾斜角度
  • font-weight 管的是“粗不粗”——影响的是文字笔画的粗细
  • 两者可以同时使用,互不影响
比如这样设置:
em {
  font-style: italic;
  font-weight: bold;
}
就是又斜又粗的效果。 基本上就这些,理解清楚它们各自控制什么,就能正确使用了。