1. :before和:after的作用就是在指定的元素内容(而不是元素本身)之前或者之后插入一个包含content属性指定内容的行内元素。
如需定位定位伪类元素在指定元素之内,需设置指定元素的定位属性,这样伪类添加的元素才会相对于指定元素定位。
否则伪类元素将相对于更上一级已定位的元素定位,如果没有,则相对于浏览器窗口定位。
注:行内元素只有设置了display:inline-block设置宽高才会有效。
2. 用伪类做样式的准则:
1)容器元素尽量设置 box-sizing:border-box,方便固定大小,
2)容器元素必须设置display:inline-block
3)伪类元素必须设置content:'',否则伪类元素画的形状将不会显示
4)容器元素设置text-indent:-9999px;将容器内的内容清除,但该元素只对块级元素有效,因此容器元素必须设置display:inline-block
示例:
.afbe{
box-sizing:border-box;
position:relative;
display:inline-block;
width:32px;
height:32px;
text-indent:-9999px;
border:2px solid red;
box-shadow:inset -50px 0 10px 12px;
}
.afbe:before{
position:absolute;
width:11px;
height:11px;
left:23px;
top:8px;
border:2px solid rgb(0,0,0);
content:'';
}
CSS伪类:before和:after使用详解及示例
本文详细介绍了CSS中的:before和:after伪类的使用方法,它们用于在元素内容前后插入行内元素。关键点包括:1) 伪类元素的位置依赖于父元素的定位;2) 需要设置content属性;3) 容器元素需设为display:inline-block并使用border-box模型,同时移除文字内容。文中还提供了一个示例,展示了如何创建一个带有内阴影和边框的图形,并利用伪类添加细节。
1万+

被折叠的 条评论
为什么被折叠?



