1、后代选择器 (包含选择器): 以空格隔开包含关系的元素
2、子选择器 以>隔开父子级元素
3、兄弟选择器 ~ +
1、.tab p[title]:{ color: red} 选择所有带有title属性的p标签
2、.tab p[title = 'name']: { color: red} 选择所有title=name属性的标签
3、.tab p[title ^= 'na'] :{} 选择开头title属性带有na开头的标签
4、.tab p[title$= 'po'] :{} 选择title属性结尾是po的标签
5、.tab p[title *= 'name'] 只要含有name值就行的标签
6、.tab p[title ~= 'name flower'] 包含name的属性的标签
7、.tab p[title |= 'name'] 以name开头的属性的标签
伪类不仅可以作用在a链接上,还可以作用在其他元素上
:link 未访问过的链接
:visited 访问过的链接
:active 鼠标点击的一瞬间
:hover 鼠标悬浮在链接上
:focus 具有焦点的输入元素 innput(将输入的外边框去掉 :focus{ outline: none})
:target 锚点目标选择器
:root 文档的根选择器
:empty 空选择器,没有任何子集的元素
:first-child div下所有孩子中的第一个
:last-child div下所有孩子中的最后一个
:first-of-type div下类型为p的第一个元素
:last-of-type div下类型为p的最后一个元素
:nth-child(2) 选择每个p元素是其父级的第二个子元素, 选择器匹配父元素中的第 n 个子元素,元素类型没有限制。
:nth-last-child(n) 选择器匹配属于其元素的第 N 个子元素的每个元素,不论元素的类型,从最后一个子元素开始计数。
:nth-last-of-type( n )选择器匹配同类型中的倒数第n个同级兄弟元素。
:after 文本伪类选择器,在每个<p>元素之后插入内容
:before 文本伪类选择器,在每个<p>元素之前插入内容
:first-letter 文本伪类选择器,选择每一个<p>元素的第一个字母
:first-line 文本伪类选择器,选择每一个<p>元素的第一行
锚点目标的伪类选择器
首尾元素的伪类选择器
:first-child div下所有的第一个p元素 div p:first-chid
:last-child div下所有的最后一个p元素 div:last-child
:first-of-type 特定 类型 (p元素)的第一个元素 div p:first-of-type
:last-of-type 特定 类型 (p元素)的第一个元素
唯一选择器
:only-child 只有一个孩子的div
:only-of-type div下只有一种孩子类型的选择器
表单上的伪类选择器
文本的伪类选择器
文本伪类表单
知识点补充:
!important : 强制权重优先级
浏览器默认font-size: 14px
可继承元素:color、font-size、font-family
通配符的权重:0
继承的权重: NULL 0>NULL
总结排序:!important >行内样式>ID选择器 >类选择器 >标签 、伪类>通配符* >继承 >浏览器默认属性
CSS(Cascading Style Sheet),中文译为层叠样式表,可以让设计者方便灵活地控制Web页面的外观表现。CSS是1996年由W3C审核通过并且推荐使用的。CSS的引入,就是为了使HTML语言更好地适应网页的美工设计。CSS详细规范说明要查阅CSS手册,或登录W3C官网( http://www.w3c.org )。
使用CSS,要了解常用的各种选择器。
1.标记选择器:
一个HTML页面由很多不同的标记组成,而CSS选择器就是声明哪些标记采用哪种CSS样式。每一种HTML标记的名称都可以作为相应的标记选择器的名称。示例:
每一个选择器都包含选择器本身、属性和值,其中属性和值可以设置多个,从而实现对同一标记名称声明多种样式。CSS语言对于所有属性和值都有相对严格的要求,如果声明的属性在CSS规范中没有,或者某个属性的值不符合该属性的要求,都不能使该CSS语句生效。 还有一种通配选择器“*”,表示其中设置的样式会应用于所有的网页元素。示例:
<html><head><title>class选择器</title>
<style type="text/css">
.red{ color: redfont-size:18px }
.green{ color: greenfont-size:20px }
</style></head>
<body>
<p class="red">class选择器1</p>
<p class="green">class选择器2</p>
<h3 class="green">h3使用class</h3>
</body>
</html>
<html><head><title>ID选择器</title>
<style type="text/css">
#bold{ font-weight: bold }
#green{ font-size:30pxcolor:#009900 }
</style></head>
<body>
<p id="bold">ID选择器1</p>
<p id="green">ID选择器2</p>
</body></html>
<html><head><title>交集选择器</title>
<style type="text/css">
p{ / 标记选择器 / color: blue }
p.special{ / 标记.类别选择器 / color: red }
.special{ / 类别选择器 / color: green }
</style></head>
<body>
<p >普通段落文本(蓝色)……</p>
<h3 >普通标题文本(黑色)……</h3>
<p class="special">指定了.special类别的段落文本(红色)……</p>
<h3 class="special">指定了.special类别的标题文本(绿色)……</h3>
</body>
</html>
<html><head><title>并集选择器</title>
<style type="text/css">
h1,h2,h3.h4.h5.p{ / 并集选择器 / color: purplefont-size:15px }
h2.special,.special,#one{ / 集体声明 / text-decoration:underline }
</style></head>
<body>
<h1 >示例文字h1……</h1>
<h2 class=”special” >示例文字h2……</h2>
<h3 >示例文字h3……</h3>
<p >示例文字p1……</p>
<p class="special">示例文字p2……</p>
<p id="one">示例文字p3……</p>
</body></html>
<html><head><title>后代选择器</title>
<style type=”text/css”>
p span{ / 嵌套声明 / color: red }
span{color:blue }
</style></head>
<body>
<p >嵌套使<span>用CSS(红色)</span>标记的方法</p>
嵌套之外的<span>标记(黑色)</span>不生效
</body></html>
:hover :visited :active :first-line :first-letter :first-child :nth-child :nth-of-type :nth-last-child
:nth-last-of-type
使用 * 可为所有元素设置样式。
根据标签为元素设置样式
同时设置多个元素组合
类选择器是为一类状态声明样式规则,下面是把文本居中定义为类样式。
将类选择器指定为具体标签。这样样式的权重就提高了
注意span.help-block不能写成 span .help-block。标签选择器和类选择器中间加了空格的话,就变成了 span下面所有class是help-block的选择器了
HTML中元素是以父子级、兄弟关系存在的。后代选择器指元素内的元素(不只是子元素,是后代元素,子集,孙子级,所有的。。。)。
子元素选择器中选择子元素,不包括孙级及以下元素。
用于选择紧挨着的同级兄弟元素。
用于选择后面的所有指定的兄弟元素或者所有元素。
为具有 class 属性的h1标签设置样式
约束多个属性
具体属性值设置样式
^ 以指定值开头的元素
$ 以指定值结尾的元素
属性内部任何位置出现值的元素,包含关系
~ 属性值中包含指定词汇的元素
| 以指定值开头或以属性连接破折号的元素