基本选择器
1.子元素选择器
父元素 > 子元素
只能选择某个元素的指定子元素,兼容ie8以上的所有浏览器
例:
style是:section > div{ color:red;}
<section>
<div>section的子div</div>
<article>
<div>section的孙div</div>
</article>
</section>
页面中会显示section的子div字体变红。
2.相邻元素选择器
元素 + 相邻一个兄弟元素
可以选择 紧接 元素后的兄弟元素 ,ie8以上兼容
style是:section > div + article{ color:red;}
<section>
<div>section的子div</div>
<article>
<div>section的孙1div</div>
</article>
<article>
<div>section的孙2div</div>
</article>
</section>
页面中会显示section的孙1div字体变红。
3.通用兄弟选择器
元素 ~ 所有相邻兄弟元素
可以选择 紧接 元素后的 所有 兄弟元素 ,ie8以上兼容
style是:section > div ~ article{ color:red;}
<section>
<div>section的子div</div>
<article>
<div>section的孙1div</div>
</article>
<article>
<div>section的孙2div</div>
</article>
</section>
页面中会显示section的孙1div section的孙2div 字体变红。
4.群组选择器
元素1,元素2,元素3...元素n(样式)
将具有相同样式的元素分组在一起,ie6以上兼容
5.属性选择器
标签名[属性名]
将所有有对应 属性名 的标签选择出来,ie8以上兼容
style是:a[href]{text-decoration:none;}
<a href="#">这是一个链接</a>
<a>这是一个a标签</a>
页面上会显示 这是一个链接 没有下划线
标签名[属性名="值"]
将所有有对应属性名的 值 的标签选择出来,ie8以上兼容
style是:a[href="attribute.html"]{text-decoration:none;}
<a href="attribute.html">这是一个链接</a>
<a href="#">这是一个a标签</a>
页面上会显示 这是一个链接 没有下划线
标签名[属性名~="值"]
将所有有对应属性名 包含 值 的标签选择出来,ie8以上兼容
style是:a[class~="two"]{text-decoration:none;}
<a href="attribute.html">这是一个链接</a>
<a href="#" class="one two">这是一个a标签</a>
<a href="#1" class="two three">这是一个a标签</a>
页面上会显示所有的 这是一个a标签 没有下划线
标签名[属性名^="值"]
将所有有对应属性名 以值 开头 的所有标签选择出来,ie8以上兼容
标签名[属性名$="值"]
将所有有对应属性名 以值 结尾 的所有标签选择出来,ie8以上兼容
标签名[属性名*="值"]
将所有有对应属性名 value里 包含 值 的所有标签选择出来,ie8以上兼容
标签名[属性名|="value"]
将所有有对应属性名 值 是value 或者是以 value- 开头 的所有标签选择出来,ie8以上兼容
6.伪类选择器
attribute : focus
获取光标时发生
attribute : enabled
可输入,ie9以上能兼容
attribute : disabled
不可输入,ie9以上能兼容
attribute : checked
单选框和复选框中的选中,ie9以上能兼容
element:first-child
指定属于其父元素的第一个子元素的element元素,ie8以上兼容
element:last-child
指定属于其父元素的最后一个子元素的element元素,ie8以上兼容
element:nth-child(N)
匹配属于其父元素的第N个子元素,不论元素类型,ie9以上兼容
N其实是一个表达式,意味着1-N
odd奇数,even偶数
element:nth-last-child(N)
从最后一个元素开始数的相对于最后一个元素的第N个元素,兼容ie9以上浏览器,不论元素类型
element:nth-last-type(N)
这个是指定元素类型的倒数第N个元素
element:only-child
选择器元素匹配他父元素的唯一子元素的每个元素,兼容ie9以上
element:only-of-type
选择器元素匹配他父元素特定类型的唯一子元素的每个元素,兼容ie9以上
element:empty
匹配没有子元素的每个元素(包括文本节点),兼容ie9以上
:not
否定选择器
匹配非指定元素的每个元素,ie9以上
父元素: not (子元素/子选择器)
伪元素
css伪元素用于向某些选择器设置特殊效果,ie9以上兼容
元素::伪元素
元素::first-line
根据first-line伪元素中的样式,对元素的第一行文本进行格式化。
注:只适用于块级元素。
元素::first-letter
用于文本首字母进行设置特殊样式。
注:只适用块级元素。
元素::before
在元素内容前面插入新内容
常与:content 配合使用
特点:1,第一个子元素2,行级元素3,通过content插入
元素::after
在元素内容后面插入新内容
常与:content 配合使用,清除浮动
特点:1,最后一个子元素2,行级元素3,通过content插入
元素::selection
用于鼠标选中文本内容的样式。