CSS学习笔记(伪类与伪元素)

摘要

伪类选择元素基于的是当前元素处于的状态,或者说元素当前所具有的特性,而不是元素的id、class、属性等静态的标志。由于状态是动态变化的,所以一个元素达到一个特定状态时,它可能得到一个伪类的样式;当状态改变时,它又会失去这个样式。由此可以看出,它的功能和class有些类似,但它是基于文档之外的抽象,所以叫伪类
与伪类针对特殊状态的元素不同的是,伪元素是对元素中的特定内容进行操作,它所操作的层次比伪类更深了一层,也因此它的动态性比伪类要低得多。实际上,设计伪元素的目的就是去选取诸如元素内容第一个字(母)、第一行,选取某些内容前面或后面这种普通的选择器无法完成的工作。它控制的内容实际上和元素是相同的,但是它本身只是基于元素的抽象,并不存在于文档中,所以叫伪元素。

伪类

anchor伪类

a:link {} /* 未访问的链接 /
a:visited {} /
已访问过的链接 /
a:hover {} /
鼠标划过的链接 /
a:active {} /
鼠标点击的链接 */

注意:
1.在 CSS 定义中,a:hover 必须被置于 a:link 和 a:visited 之后,才是有效的。
2.在 CSS 定义中,a:active 必须被置于 a:hover 之后,才是有效的。
3.伪类的名称不区分大小写。

伪类和CSS类

例:
a .red:hover {color:#FF0000;}

《a class=“red” href=“xxx”》

CSS 语法

:first-child 伪类

选择父元素的第一个子元素。

例:
p:first-child
{
color:blue;
}
选择器匹配作为任何元素的第一个子元素的 p 元素


p > i:first-child
{
color:blue;
}
选择器匹配作为 p 元素的第一个 i 元素


p:first-child i
{
color:blue;
}
选择器匹配作为任何元素的第一个子元素的 p 元素中的所有 i 子元素


伪元素

:first-line

向文本的首行设置特殊样式
只能用于块级元素

:first-letter

向文本的首字母设置特殊样式
只能用于块级元素

:before

在元素的内容前面插入新内容

:after

在元素的内容后面插入新内容

属性选择器

根据元素中的属性或属性值来选定指定元素

[属性名]

p[title]
选定有title属性的所有p元素

[属性名=“属性值”]

input[type=“radio”]
选定type属性为radio的所有input元素

[属性名^=“属性值”]

p[title^=“ab”]
选定title属性的值以ab开头的所有p元素

[属性名$=“属性值”]

p[title$=“c”]
选定title属性的值以c结尾的所有p元素

[属性名*=“属性值”]

p[title*=“99”]
选定title属性的值包含99的所有p元素

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值