一、基本选择器
序号 选择器 含义
* 通用元素选择器,匹配任何元素,用*号引用
E 标签选择器,匹配所有使用E标签的元素
E,.name,#ID
.name class选择器使用(.),匹配所有class属性中包含name的元素
#nameID id选择器使用(#),一个页面ID的名字是唯一的
E,F 多元素选择器(群组选择器),同时匹配所有E元素或F元素,E和F之间用逗号分隔
实例:
* { margin:0; padding:0; } p { font-size:16px; } .name { background:#fff; } p .name { background:#fff; } p .name { color:#fff; font-weight:600; } #nameID { background:#fff; }
h1,h2,h3,h4,div,.name,#id{ color: #fff;}
关系选择器(relationship)
E F 后代元素选择器,匹配所有属于E元素后代的F元素,E和F之间用空格分隔
E > F 子元素选择器,匹配所有E元素的子元素F
E + F 毗邻元素选择器,匹配所有紧随E元素之后的同级元素F
E ~ F 匹配任何在E元素之后的同级F元素
实例: div p { color:#fff; } div > strong { color:#fff; } p + span { color:#fff; }
p~a{color:#fff}
属性选择器(attribute)
E[att] 匹配所有具有att属性的E元素,不考虑它的值
E[att=val] 匹配所有att属性等于“val”的E元素
E[att~=val] 匹配所有att属性具有多个空格分隔的值、其中一个值等于“val”的E元素
E[att|=val] 匹配所有att属性具有多个连字号分隔(hyphen-separated)的值、其中一个值
以“val”开头的E元素主要用于lang属性,比如“en”、“en-us”、“en-gb”等等
E[att^=”val”] 属性att的值以"val"开头的元素 E[att$=”val”] 属性att的值以"val"结尾的元素 E[att*=”val”] 属性att的值包含"val"字符串的元素
p[title] { color:#fff; }
div[class=content] { color:#fff; }
a[title~=flower]{color:#fff}
p[lang|=en] { color:#fff; }
li[class=quote][name] { color:#fff; }
div[id^="nav"] { background:#fff; }
p[value$=on]{background:#ccc}
p[value*=on]{background:#ccc}伪类选择器
伪元素选择器(css3用连个(:)代替一个)
E:link 匹配所有未被点击的链接
E:visited 匹配所有已被点击的链接
E:active 匹配鼠标已经其上按下、还没有释放的E元素
E:hover 匹配鼠标悬停其上的E元素
E:focus 匹配获得当前焦点的E元素
E:lang(c) 匹配lang属性等于c的E元素
E:root 匹配文档的根元素,对于HTML文档,就是HTML元素 E:nth-child(n) 匹配其父元素的第n个子元素,第一个编号为1 E:nth-last-child(n) 匹配其父元素的倒数第n个子元素,第一个编号为1 E:nth-of-type(n) 与:nth-child()作用类似,但是仅匹配使用同种标签的元素 E:nth-last-of-type(n) 与:nth-last-child() 作用类似,但是仅匹配使用同种标签的元素 E:last-child 匹配父元素的最后一个子元素,等同于:nth-last-child(1) E:first-of-type 匹配父元素下使用同种标签的第一个子元素,等同于:nth-of-type(1) E:last-of-type 匹配父元素下使用同种标签的最后一个子元素,等同于:nth-last-of-type(1) E:only-child 匹配父元素下仅有的一个子元素,等同于:first-child:last-child 或 :nth-child(1):nth-last-child(1) E:only-of-type 匹配父元素下使用同种标签的唯一一个子元素,等同于:first-of-type:last-of-type 或 :nth-of-type(1):nth-last-of-type(1) E:empty 匹配一个不包含任何子元素的元素,注意,文本节点也被看作子元素 E:enabled 匹配表单中激活的元素 E:disabled 匹配表单中禁用的元素 E:checked 匹配表单中被选中的radio(单选框)或checkbox(复选框)元素- E:target 匹配文档中特定"id"点击后的效果
- E::selection 匹配用户当前选中的元素 反选伪类
- E:not(s) 匹配不符合当前选择器的任何元素
- @page:first 设置在打印时页面容器第一页使用的样式。仅用于@page规则。
- 该伪类选择符只允许定义margin, orphans, widows 和 page breaks相关属性
- @page:left 设置页面容器位于装订线左边的所有页面使用的样式。仅用于@page规则。
- 该伪类选择符只允许定义margin, padding, border 和 background属性
- @page:right 设置页面容器位于装订线右边的所有页面使用的样式。仅用于@page规则。
- 该伪类选择符只允许定义margin, padding, border 和 background属性
E::first-line 匹配E元素的第一行 E::first-letter 匹配E元素的第一个字母 E::before 在E元素之前插入生成的内容 E::after 在E元素之后插入生成的内容
css3 百度百科