css选择器及优先级

css常见选择器及优先级

选择器名称选择器符号选择器优先级
行内样式style={}1000
id选择器#id100
类选择器.className10
属性选择器a[ref=‘atrName’]10
伪类选择器:hover10
标签选择器p1
伪元素选择器::after1
兄弟选择器+0
子选择器>0
后代选择器div p0
通配符*0

css优先级规则
1、css选择规则的权重值不同时,权重值高的优先;
2、css选择规则的权重值相同时,后定义的规则优先;
3、css属性后面加 !important 时,无条件绝对优先;

伪类选择器和伪元素选择器

伪类选择器

  1. 定义:伪类选择器用于向某些选择器添加特殊的效果。用伪类定义的样式并不是作用在标记上,而是作用在标记的状态上,如a标签的:hover,表单元素的:disabled

  2. 分类:

    • anchor伪类
    • 目标伪类选择器
    • 表单元素伪类选择器
    • 结构伪类选择器
    • 否定伪类选择器

    2.1. anchor伪类
    一般是设置a标签的四种状态,顺序为link、visited、hover、active。
    a标签的href属性的值可以指向链接地址、标签的id,或者a标签的name

    选择器符号表示解释说明
    :linka:link未访问的链接状态
    :hovera:hover鼠标悬停的链接状态
    :activea:active正在选中的链接状态
    :visiteda:visited已经选中后的链接状态

    2.2 目标伪类选择器
    :target 超链接后目标样式,当使用超链接后,链接的目标可以用目标选择器设置,目标只有被跳转后才会显示对应的样式。

    此处有一个小案例

        <style>
            a,a:link{
                 color:red;
            }
            a:visited{
                color:yellow;
            }
            a:hover{
                color:green;
            }
            a:active{
                color:blue;
            }
           div:target{
               color:antiquewhite
           }
        </style>
    </head>
    <body>
        <a href="http://wwww.baiduzhidao.com">去百度</a>
        <a href="#test">去猫店</a>
    <div id="test">a标签的锚点属性</div>
    </body>
    

    2.3 表单元素伪类选择器

    选择器示例示例说明
    :focusinput:focus选择元素输入后具有焦点
    :enabledinput:enabled匹配每个已启用的元素
    :disabledinput:disabled匹配每个被禁用的元素
    :checkedinput:checked匹配每个已被选中的 input 元素
    :requiredinput:required选择有"required"属性指定的元素属性
    :optionalinput:optional选择没有"required"的元素属性
    :read-onlyinput:read-only选择只读属性的元素属性
    :read-writeinput:read-write选择没有只读属性的元素属性
    :validinput:valid选择所有有效值的属性
    :invalidinput:invalid在表单元素中的值是非法时设置指定样式
    :in-rangeinput:in-range用于标签的值在指定区间值时显示的样式
    :out-of-rangeinput:out-of-range选择指定范围以外的值的元素属性

    2.4 结构伪类选择器

    选择器示例示例说明
    :first-childp:first-child匹配属于任意元素的第一个子元素的p元素
    :first-of-typep:first-of-type选择父元素中的第一个 p 元素
    :last-childp:last-child选择所有p元素的最后一个子元素
    :last-of-typep:last-of-type选择父元素中最后一个p元素
    :emptyp:empty匹配没有子元素(包括文本节点)的p元素
    :nth-child(n)p:nth-child(2)选择所有 p 元素的父元素的第二个子元素
    :nth-of-type(n)p:nth-of-type(2)选择所有p元素第二个为p的子元素
    :nth-last-child(n)p:nth-last-child(2)选择所有p元素倒数的第二个子元素
    :nth-last-of-type(n)p:nth-last-of-type(2)选择所有p元素倒数的第二个为p的子元素
    :only-childp:only-child选择所有仅有一个子元素,并且子元素是p元素
    :only-of-typep:only-of-type选择所有仅有一个子元素中为p的元素

    2.5 否定伪类选择器

    选择器示例示例说明
    :not(selector):not§选择所有p以外的元素

伪元素选择器

伪元素在DOM树中创建了一些抽象元素,这些抽象元素是不存在于文档语言里的(可以理解为html源码)。比如:documen接口不提供访问元素内容的第一个字或者第一行的机制,而伪元素可以使开发者可以提取到这些信息。并且,一些伪元素可以使开发者获取到不存在于源文档中的内容。伪元素的由两个冒号::开头,然后是伪元素的名称。

选择器示例示例说明
::first-letterp::first-letter选择器的首字母
::first-linep::first-line选择器的首行
::selectionp::selection被用户选取的部分
::beforep::before在选择器前增加内容
::afterp::after在选择器后增加内容
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

哆啦咪唏

看到这里了,不留下点什么吗

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值