CSS优先级

介绍:

  当一个元素有多个相互冲突的CSS属性声明时,只有优先级最高的的CSS属性声明会被应用;以此,CSS的优先级一般对只有一个CSS属性声明的元素没意义。元素的多个相互冲突的CSS属性声明如果优先级相同,那么后面的声明将会被应用上。

CSS基础选择器:

  根据选择器的优先级,CSS选择器大致可分为3档(依次递增):
  1、类型选择器(type selectors)(例如, h1)和 伪元素(pseudo-elements)(例如, ::before)
  2、类选择器(class selectors) (例如,.example),属性选择器(attributes selectors)(例如, [type="radio"]),伪类(pseudo-classes)(例如, :hover)
  3、ID选择器(例如, #example)
  对元素设置的内联CSS样式会覆盖上面所有CSS选择器所赋予的相同属性的样式,因此可视为优先级更高一些(JavaScript对元素CSS操作中的 Element.style 是对元素内联CSS样式的操作)。

!import:

  当在一个样式声明中使用一个 !important 规则时,它将覆盖任何其他声明;当两条相互冲突的带有 !important 规则的声明被应用到相同的元素上时,拥有更大优先级的声明将会被采用。
  但 !important 样式并不被提倡使用(除非在要覆盖内联CSS样式的情况下),因为其破坏了样式表中的固有的级联规则。
  
  [参考]: https://developer.mozilla.org/zh-CN/docs/Web/CSS/Specificity
  
  

你可能感兴趣的:(CSS优先级)