css3中,追加了三个属性选择器分别为:
结构性伪类选择器由两部分构成,一是伪类选择器,一是伪元素选择器。
伪类选择器 ,要注意命名不要与系统定义好的选择器重名,例如link、hover
伪元素选择器 中包含 first-line、first-letter、before、after。
当root和body起冲突时,body就对内容区域生效,在内容区外则是root生效。
格式:not(selector)
1. first-child 对一个父元素中的 第一个 子元素进行样式的指定
2. last-child 对一个父元素中的 最后一个 子元素进行样式的指定
3. nth-child(positon) 对一个父元素中的 指定序号 的子元素进行样式的指定
4. nth-last-child 对一个父元素中的 指定倒数序号 的子元素进行样式的指定
2)使用nth-of-type(odd)和nth-of-type(even)
1)使用nth-child
2)使用nth-child(an+b),a表示每次循环中,包括几种样式,b表示指定的样式在循环中所处的位置。
only-child选择器,在元素只有一个子元素时,可以代替使用 nth-child(1)/nth-last-child(1) 。
在css3选择器中,除了结构性伪类选择器外,还有一种UI元素状态选择器——只有当元素处于某种状态下才起作用,在默认状态下不起作用。
通过js改变输入框的可输入和不可输入状态,通过css样式改变输入框可输入和不可输入状态时的背景颜色。
用来位于同一个父元素之下的,给与一个子元素平级的另一个子元素设定样式
一、首先是C3属性选择器
1. 每一个标签都有自己的属性,是吧?要给它一个样式,就可以通过它的属性来找到它。
2. 属性选择器的权重是10
3. 都有哪些?
- 标签名[属性名]
- 标签
- 标签名[type="属性名"]
- ^= 以icon开始的选出来
- $= 以icon结尾的选出来
- *= 代表任意位置,包含该属性的就要选出来
例子
二、结构伪类选择器
语法:
nth-child(n) 释义:
- 想要选哪个n就在那个里面输入数字几就可以了
- 这里的n 可以有特殊数值偶数even 奇数odd 有利于做隔行变色
- n可以是公式
- -n+5选出前5个。
例子
三、ntf-of-type 选择器
先上总结:
- nth-child(n) 选择父元素里面的第一个 n个孩子
- of-type 选择指定类型的元素
例子
四、伪类选择器
方式一 ::before ::after
方式二 :before :after
总结:伪元素前面可以是一个冒号,也可以是两个冒号,不影响结果
例子
这个就看你想选择多个的规律。
定义和用法
:nth-last-child(n) 选择器匹配属于其元素的第 N 个子元素的每个元素,不论元素的类型,从最后一个子元素开始计数。
n 可以是数字、关键词或公式。
规定属于其父元素的第二个子元素的每个 p 元素,从最后一个子元素开始计数:p:nth-last-child(2)
{
background:#ff0000
} Odd 和 even 是可用于匹配下标是奇数或偶数的子元素的关键词(第一个子元素的下标是 1)。
在这里,我们为奇数和偶数 p 元素指定两种不同的背景色,从最后一个子元素开始计数:
p:nth-last-child(odd)
{
background:#ff0000
}
p:nth-last-child(even)
{
background:#0000ff 使用公式 (an + b)。描述:表示周期的长度,n 是计数器(从 0 开始),b 是偏移值。
在这里,我们指定了下标是 3 的倍数的所有 p 元素的背景色,从最后一个子元素开始计数:
p:nth-last-child(3n+0)
{
background:#ff0000
}