属性选择器、类选择器、伪元素选择器的具体介绍(nth-of-type、nth-child、:not、:link、:visited、:active、::selection、::placeholder等)

目录

属性选择器(权重10)

[class~='className']

[class|='name']

[class^='surName']

[class$='lastName']

[class*='name']

伪类选择器(权重10)

div:nth-of-type(2)

div:nth-last-of-type(2)

div:only-of-type

div:first-of-type

div:last-of-type

div:nth-child(2)

div:nth-last-child(2)

div:first-child

div:last-child

div:only-child

:not(div)

a:visited

div:active

div:empty

div:target

input:default

input:disabled

input:enable

input:read-only

input:read-write

input:focus

input:in-range

input:out-of-range

input:indeterminate

input:invalid

input:valid

input:optional

input:required

div:fullscreen

div:lang(en)

:root

伪元素选择器(权重大于!important)

div::selection

input::placeholder

div::first-letter

div::first-line


属性选择器(权重10)

通过[class='className']的方式选择class=‘className’的所有标签(只会选择有唯一一个类名为'className'的标签,如需要选择多个类名的中间用空格隔开),其中可以只填写class,比如[id]是选择有id属性的所有标签。以下方法解释是将多个class类名理解为一个带空格的字符串。

[class~='className']

空格分割的字符串中有值为className的。

[class|='name']

字符串以name开头的所有标签,注意有很大限制,要求name必需是整个单词,即选择的字符串为name或name-或name-str,其中str可以为任意字符串。

[class^='surName']

字符串以surName开头的所有标签。

[class$='lastName']

字符串以lastName结尾的所有标签。

[class*='name']

字符串中包含name的所有标签。

 

伪类选择器(权重10)

div:nth-of-type(2)

选择div,满足div为兄弟元素节点中的第二个(前面需要有一个不一定是相邻的兄弟元素节点div),可以传入n,n会从0开始累加,例如div:nth-of-type(2+n)表示选取div:nth-of-type(2)、div:nth-of-type(3)、...、div:last-of-type。

div:nth-last-of-type(2)

选择div,满足div为兄弟元素节点中的倒数第二个(后面需要有一个不一定是相邻的兄弟元素节点div)。

div:only-of-type

选择div,满足无为div的兄弟节点。

div:first-of-type

选择div,满足div之间如果是兄弟元素,则只选择第一个(相当于div:nth-of-type(1))。

div:last-of-type

选择div,满足div之间如果是兄弟元素,则只选择最后一个。

div:nth-child(2)

选择div,满足div为第2个孩子元素节点(第一个孩子元素节点可以是其它元素),可以传入n,n会从0开始累加,例如div:nth-child(2+n)表示选取div:nth-child(2)、div:nth-child(3)、...、div:last-child。

div:nth-last-child(2)

选择div,满足div为倒数第2个孩子元素节点(倒数第一个孩子元素节点可以是其它元素)。

div:first-child

选择div且div.previousElementSibling(前一个兄弟元素节点)为空。

div:last-child

选择div且div.nextElementSibling(下一个兄弟元素节点)为空。

div:only-child

选择div,满足div无任何兄弟元素。

:not(div)

选择不是div的标签(除了body和html),括号中可以写其它选择器。

a标签未被访问过的链接设置样式(历史记录中未被访问的),错误的链接即使访问过也为未被访问的。

a:visited

a标签已被访问过的链接设置样式(历史记录中存在的链接),错误的链接即使访问过也为未被访问的。

div:active

当鼠标在div区域按下的时刻显示的样式,抬起鼠标将恢复。

div:empty

选择内容为空的div元素。

div:target

div在被a标签href跳转的锚选中时的样式。

input:default

input单选框或复选框中属性带有checked的元素,用于一组相关元素中选取默认表单元素。

input:disabled

input标签中所有type='text'且disabled='disabled'元素。

input:enable

input标签中所有type='text'且没有disabled='disabled'元素。

input:read-only

input属性中带有readonly的元素。

input:read-write

input属性中未带有readonly的元素。

input:focus

input标签获得焦点时样式。

input:in-range

input元素的值在范围内时的样式。

input:out-of-range

input元素的值超出范围时的样式。

input:indeterminate

input元素设置了indeterminate=true的不确定状态时的样式,当勾选后便会消失不确定状态以及样式,再次取消也不会产生。

input:invalid

input元素的值为无效值时的样式,仅适用于有限制的表单元素。

input:valid

input元素的值为有效值时的样式,仅适用于有限制的表单元素。

input:optional

input元素属性不带有required的样式(带有的为必填表单元素),未设置时默认为不带有。

input:required

input元素属性中带有required的样式(带有的为必填表单元素),未设置时默认为不带有。

div:fullscreen

页面处于全屏模式下div样式。

div:lang(en)

同[lang|='en'],只能用于lang属性。

:root

匹配文档根元素,在HTML中始终为html元素

 

伪元素选择器(权重大于!important)

div::selection

当div的文本被选中情况下的样式。

input::placeholder

input标签中设置了placeholder='str',选择str的文本样式,其中placeholder为占位符,即显示为input的value,但实际上value为空。

div::first-letter

选择div下的文本节点中的首个字母或文字,存在::before中有文本的情况下是没有::first-letter(注意该选择器权重大于::first-line)。

div::first-line

选择div的首行文本内容。(注意该选择器权重小于::first-letter)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值