目录
属性选择器(权重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:link
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)。