div,p:选择所有 div 元素和 p 元素
div p:选择 div 内部所有的 p 元素
div > p:选择父元素为 div 的所有 p 元素
div + p:选择紧接在 div 之后的所有 p 元素
2、属性选择器:
[ 属性名 ] 选取含有指定属性值的元素
[ 属性名 = ‘属性值’ ] 选择含有指定属性值的元素
[ 属性名 ^= ‘属性值’ ] 选择属性值以指定内容开头的元素
[ 属性名 $= ‘属性值’ ] 选择属性值以指定内容结尾的元素
[ 属性名 *= ‘属性值’ ] 选择属性值以包含指定内容的元素
[ 属性名 ~= ‘属性值’ ] 选择属性包含 指定内容的所有元素
a:link,所有未被访问的链接
a:visited ,所有已被访问过的链接
a:active ,被点击、触发的链接
a:hover ,鼠标放在上面的链接
::selection,为选中的内容添加样式
input:focus,获得焦点的 input 元素
p:first-letter,选择每个 p 元素的首字母
p:first-line,选择每个 p 元素的首行
p:first-child,可以选中第一个子元素
p:last-child,可以选中最后一个元素
p:nth-child,可以选中任意位置的子元素
tr:nth-child(even) // 表示选中所有偶数行
p:before,在每个 p 元素的内容之前插入内容
p:after,在每个 p 元素的内容之后插入内容
:first-of-type,
:last-of-type,
:nth-of-type,
和first-child这些非常的类似,只不过child,是在所有子元素中排序
而 type,是在指定类型的子元素中排序
否定伪类,可以从已选中的元素中剔除某些元素
语法, :not( 选择器 )
p:not(.hello){background:yellow;} // 选择所有的 p 元素 但是 class 为 hello 的 除外
优先级的规则:
内联样式,优先级1000
id选择器,优先级100
类和伪类,优先级10
元素选择器,优先级1
通配符*,优先级0
继承的样式,没有优先级
可以在样式最后添加一个 !important,此时该样式获得一个最高的优先级,但是开发中避免使用 !important
sub 标签用来表示一个下标
sup表示用来表示一个上标
letter-spacing,用来设置字符之间的间距
word-spacing,用来设置单词之间的间距