CSS 选择符

177 阅读4分钟

元素选择符

Selectors
选择符
Name
名称
CSS Version
版本
Description
简介
*通配选择符(Universal Selector)CSS2所有元素对象。
E类型选择符(Type Selector)CSS1以文档语言对象类型作为选择符。
E#myidid选择符(ID Selector)CSS1以唯一标识符id属性等于myid的E对象作为选择符。
E.myclassclass选择符(Class Selector)CSS1以class属性包含myclass的E对象作为选择符。

关系选择符

Selectors
选择符
Name
名称
CSS Version
版本
Description
简介
E F包含选择符(Descendant combinator)CSS1选择所有被E元素包含的F元素。
E>F子选择符(Child combinator)CSS2选择所有作为E元素的子元素F。
E+F相邻选择符(Adjacent sibling combinator)CSS2选择紧贴在E元素之后F元素。
E~F兄弟选择符(General sibling combinator)CSS3选择E元素所有兄弟元素F。

E! > F  和 E /foo/ F    CSS4

属性选择符

Selectors
选择符
CSS Version
版本
Description
简介
E[att]CSS2选择具有att属性的E元素。
E[att="val"]

E[att="val" i]
CSS2

CSS4
选择具有att属性且属性值等于val的E元素。

选择具有att属性且属性值等于val的E元素。(属性名区分大小写)
E[att~="val"]CSS2选择具有att属性且属性值为一用空格分隔的字词列表,其中一个等于val的E元素。
E[att^="val"]CSS3选择具有att属性且属性值为以val开头的字符串的E元素。
E[att$="val"]CSS3选择具有att属性且属性值为以val结尾的字符串的E元素。
E[att*="val"]CSS3选择具有att属性且属性值为包含val的字符串的E元素。
E[att|="val"]CSS2选择具有att属性且属性值为一用连接符分隔的字符串,并以val开头的E元素。

伪对象选择符

CSS3将伪对象选择符(Pseudo-Element Selectors)前面的 单个冒号(:)修改为双冒号(::),用以区别伪类选择符(Pseudo-Classes Selectors),但以前的写法仍然有效。即E:before可转化为E::before

Selectors
选择符
CSS Version
版本
Description
简介
E:first-letter/E::first-letterCSS1/CSS3设置对象内的第一个字符的样式。
E:first-line/E::first-lineCSS1/CSS3设置对象内的第一行的样式。
E:before/E::beforeCSS2/CSS3设置在对象前(依据对象树的逻辑结构)发生的内容。用来和content属性一起使用
E:after/E::afterCSS2/CSS3设置在对象后(依据对象树的逻辑结构)发生的内容。用来和content属性一起使用
E::selectionCSS3设置对象被选择时的颜色。

伪类选择符

链接伪类选择符

Selectors
选择符
CSS Version
版本
Description
简介
E:linkCSS1设置超链接a在未被访问前的样式。
E:visitedCSS1设置超链接a在其链接地址已被访问过时的样式。
E:any-linkCSS4设置任意一个超链接锚点的样式。
E:local-linkCSS4设置指向当前文档位置的链接样式。
E:local-link(0)CSS4设置指向当前域的链接样式。

用户行为伪类选择符

Selectors
选择符
CSS Version
版本
Description
简介
E:focus-within

表示一个元素获得焦点,或,该元素的后代元素获得焦点。
E:hoverCSS1/CSS2设置元素在其鼠标悬停时的样式。
E:activeCSS1/CSS2设置元素在被用户激活(在鼠标点击与释放之间发生的事件)时的样式。
E:focusCSS1/CSS2设置元素在成为输入焦点(该元素的onfocus事件发生)时的样式。

结构性伪类

E:rootCSS3匹配E元素在文档的根元素。
E:first-childCSS2匹配父元素的第一个子元素E。
E:last-childCSS3匹配父元素的最后一个子元素E。
E:only-childCSS3匹配父元素仅有的一个子元素E。
E:nth-child(n)CSS3匹配父元素的第n个子元素E。
E:nth-last-child(n)CSS3匹配父元素的倒数第n个子元素E。
E:first-of-typeCSS3匹配同类型中的第一个同级兄弟元素E。
E:last-of-typeCSS3匹配同类型中的最后一个同级兄弟元素E。
E:only-of-typeCSS3匹配同类型中的唯一的一个同级兄弟元素E。
E:nth-of-type(n)CSS3匹配同类型中的第n个同级兄弟元素E。
E:nth-last-of-type(n)CSS3匹配同类型中的倒数第n个同级兄弟元素E。

目标伪类选择符

E:targetCSS3匹配相关URL指向的E元素。
E:targetCSS3匹配相关URL指向的E元素。
E:scopeCSS4设置被指定上下文参考的元素。

元素状态选择符

E:checkedCSS3匹配用户界面上处于选中状态的元素E。(用于input type为radio与checkbox时)
E:enabledCSS3匹配用户界面上处于可用状态的元素E。
E:disabledCSS3匹配用户界面上处于禁用状态的元素E。

E:default    

E:in-range      E:out-of-range

E:required    E:valid    E:invalid 

E:optional

E:read-only   E:read-write 

E:placeholder-shown

总结


参考资料

CSS参考手册

WEB开发技术-样式表