1.通配选择符: *
通配选择符,一般表示对页面所有元素应用样式,如 :
*{ margin:0,padding:0}
在特殊情况下,可以对特定元素的所有后代元素应用样式,如将页面中p标签所包含的所有后代元素的字体设置为红色,
p{ color:#FFFFFFF}
p *{color:#FF0000}
2. 类选择符:.
类选择符,在CSS中必须以点(.)作为前缀,紧跟一个具有语义性的自定义类名,例如:
.mycss{font-size:18px;color:red}
3.包含选择符:包含选择符,很多人称它为派生选择符或者后代选择符,因为该选择符类型是作用于某个
元素中的子元素的。例如,需要将p标签里面的strong标签定义样式,那么可以这样定义:p strong {color:FFFFFF;
font-size:18px;}
4. 子选择符:
子选择符也可以称为子对象选择符,其主要作用是定义子元素对象的样式,无法定义子元素以外的对象。选择符与选择符直接必须用“>”符号才是子选择符,例如需要定义body标签下的子元素strong标签的样式,即body>strong{
color:#FFFFFF,font-size:18px}
5. 相邻选择符:
相邻选择符与子选择符很相似,只是将中间的“>”换成了“+”,但功能上却相差甚远。其主要作用是匹配同一个父级下某个元素之后的元素,例如,定义与p标签相邻的strong标签: p + strong {color:#FF00000; font-size:18px}
6.属性选择符:
属性选择符的格式是标签元素后紧跟一对中括号,中括号里的内容是该标签元素的属性或者表达式。属性选择符可分为4种模式:E[attr], E[attr="value"],E[attr~="value"],E[attr|="value"]
E代表任何一个Html标签,attr代表E标签中的任意一个属性,value代表该属性中存在的属性值。
E[attr]将匹配具有“attr”属性的E标签元素,忽略该属性的属性值。例如,我们需要定义页面中所有带class属性的标签:*[class]{color:#FF0000; font-size:18px}
E[attr="value"]匹配具有“attr”属性且属性值为“value”的E标签元素。例如,要定义type属性值为text的input标签元素的样式,如下所示:input[type="text"]{text-align:center;font-size:18px}
E[attr~="value"]匹配具有“attr”属性且属性值是具有空格符隔开的字段,其中一个字段等于value的E标签元素。
p[title~="css"]{font-size:20px;color:#FF0000}
html页面中
title 属性值为xhtml css的段落标签
E[attr|=value]匹配具有attr属性且属性值必须是以value值开始及使用连字符(-)分割的E标签元素
7. ID选择符:
ID选择符的形式与类选择符极其相近,类选择符是以点(.)作为前缀的,而ID选择符是以井号(#)为前缀的。ID选择符的具体用法与类选择符是相似的,但是同一个页面中,使用ID选择符建议不要出现同名ID,因为ID在JavaScript等脚本语言中运用比较多,出现同名ID容易导致JavaScript等脚本语言的判断错误。
选择符的组合关系
选择符的组合,主要体现在针对性使用类选择符或者ID选择符、选择符群组合选择符组合这3种方式。
针对性使用类选择符或者ID选择符:例如,页面中所有标签元素的类名都为.myConten,需要将段落标签P的样式定义为字体颜色为红色,大小18px。
.myContent{font-size:12px}
p.myContent{font-size:18px;text-decoration:underline;color:#FF0000}
选择符群组,顾名思义,就是将多个相同定义的选择符组合并。例如:段落标签p,类选择符.myContent及ID选择符#title共同定义了颜色为红色并且大小为18px的文字。
p, .myContent, #title{font-size:18px;color:#FF0000}
选择符组合,根据Html的结构关系,层层递进的罗列选择符,目标选择符为最后一个选择符。每个选择符之间的使用空格分隔且关系为父子关系。例如,定义段落标签p中的子标签span的方式即为 p span{color:#FF0000}
选择符的优先级的积分:
标签选择符、伪类及伪对象:优先级积分为1。
类选择符、属性选择符:优先级积分为10。
ID选择符:优先级积分为100。
style属性:优先级积分为1000。
其他选择符,如通配符选择符等:优先级积分为0。
!important 具有最高级的优先级。
如:p{color:blue:!import;},该样式将使所有的p标签都变成蓝色。
加了!important关键字声明后,其他所有选择符的属性都被覆盖,可见其优先级有多么的高。