css伪类(pseudo-class)称为选择器
以冒号为前缀,被添加到一个选择器末尾的关键字,当希望样式在特定状态下才被呈现到指定的元素时,可以往元素的选择器后面加上对应的伪类(pseudo-class)
伪类选择器之状态类:
1、 :link 没访问的链接
:visited 访问/点击过后的链接
:hover 鼠标悬停
:active 鼠标划上去的那一刻(按下还没抬起)——表单链接被激活状态
:focus 用户点击触摸通过键盘 tab键选择表单元素,链接等元素时会被触发
:checked 表单元素被选中状态 (style中书写) 用于单/复选框
2、伪类选择器之标签中的属性类
[attr] 选择伪类前选择器所选中的元素中包含attr属性的元素
[attr=value] 仅选择attr属性被赋值为value的所有元素
[attr^=value]仅选择attr属性中以value开头的所有元素
[attr=$value] 仅选择attr属性中以value结尾的所有元素
[attr*=value]仅选择attr属性中包含value的所有元素
[attr~=value]仅选择attr属性中包含值为value的所有元素
3、伪类选择器之结构类
:nth-child(n) 先找到伪类前选择器选中的所有兄弟元素,按位置先后顺序从1开始排序(不区分标签的类别,如p div均可)——在父级中排序
:nth-last-child(n)首先满足 :伪类选择器前面的条件,且在同一父级中,其次必须是指定的第几个才生效——从后往前数
:nth-of-type(n) 首先满足 :伪类选择器前面的条件,且在同一父级中,并且是同一类型的第几个才生效 ——(在该选择器中排序)————同类排序
:nth-last-of-type(n) 首先满足:伪类选择器前面的条件,同一父级中,同一类型的从后面数第几个才生效
*******
以上选择器 在同一父级下面都是同一种标签时,效果是一样的
:first-child 满足:前面条件 且是第一个该父元素中第一个元素
:last-child 满足:前面条件 且是该父元素中最后一个元素
:first-of-type 满足:前面条件,且是该父元素中该类型的第一个元素
:last-of-type 满足:前面条件,且是该父元素中该类型的最后一个元素
伪元素:
创造一个假的不存在于页面中的元素————是行内元素的特性
属性:
content :
元素的内容,不写不显示 默认值 ——" "
也可以为url(设置图片)
attr(data-name)——自定义在标签上的属性名
设置宽高---display:block
2、常用伪元素
::before 在元素最前面添加一个子元素
::after 在元素最后面添加一个子元素
以上两个伪元素常用于清除浮动,不会影响SEO
::selection 内容元素被选中的状态
::first-letter 首个字母或汉字等(/例外)
::first-line 首行
以上3个伪元素通过style设置样式使用
3、锚点链接定位
点击链接跳转到本页对应位置
方法:
将a的href绑定要跳转区域的id名