深入理解CSS选择器优先级

时间:2021-05-08

本文为大家分享的是CSS选择器优先级相关资料介绍,供大家参考,具体内容如下

1.类的覆盖顺序和应用的时候引用的顺序没关系,覆盖顺序取决于类定义的顺序

例如:

CSS Code复制内容到剪贴板
  • .a{
  • color:red
  • }
  • .b{
  • color:green
  • }
  • 由于b晚于a定义,所以b覆盖a,反之则a覆盖b
    2.类选择器优先级大于标签选择器

    例如:

    CSS Code复制内容到剪贴板
  • div{
  • color:red
  • }
  • .div{
  • color:green
  • }
  • .div将覆盖div

    3.类选择器优先级等于纯属性选择器,谁后定义谁优先级高,例如:

    CSS Code复制内容到剪贴板
  • [data-name='div']{
  • color:red
  • }
  • .a{
  • color:blue
  • }
  • .a将覆盖[data-name='div'],反之[data-name='div']覆盖.a

    4.类选择器优先级小于标签+属性组合选择器,例如:

    CSS Code复制内容到剪贴板
  • div[data-name='div']{
  • color:red
  • }
  • .a{
  • color:blue
  • }
  • .a将被div[data-name='div']覆盖

    5.类选择器优先级小于id选择器,例如:

    CSS Code复制内容到剪贴板
  • .a{
  • color:blue
  • }
  • #div{
  • color:red
  • }
  • .a将被#div覆盖

    6.标签+属性组合选择器优先级小于id选择器,例如:

    CSS Code复制内容到剪贴板
  • [data-name='div']{
  • color:blue
  • }
  • #div{
  • color:red
  • }
  • #div将会覆盖[data-name='div']

    7.标签选择器优先级小于id选择器,例如:

    CSS Code复制内容到剪贴板
  • div{
  • color:blue
  • }
  • #div{
  • color:red
  • }
  • #div将会覆盖div

    8.标签选择器优先级小于纯属性选择器,例如:

    CSS Code复制内容到剪贴板
  • div{
  • color:blue
  • }
  • [data-name='div']{
  • color:red
  • }
  • div将会被 [data-name='div']覆盖
    综上所述:标签选择器<类选择器=纯属性选择器(先定义会被覆盖)<标签+属性组合选择器<id选择器

    以上就是本文的全部内容,希望对大家的学习有所帮助。

    原文:http://www.cnblogs.com/zouyitangzaishuo/p/5265563.html

    声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

    相关文章