css中 li:before 与 li:after

2024-12-29 04:03:27
推荐回答(5个)
回答1:

ul.box li:before {
:before元素的内容之前插入新内容
z-index: -2;
属性设置元素的堆叠顺序。拥有更高堆叠顺序的元素总是会处于堆叠顺序较低的元素的前面。
position: absolute;
生成绝对定位的元素
background: transparent;
背景为透明
width: 90%;
宽度为90%
height: 80%;
高度为80%
content: '';
来插入生成内容
left: 20px;
左边距离
bottom:8px;
下面距离
-webkit-transform: skew(-12deg) rotate(-4deg);
斜切-12度,旋转-4度。下方同理,前缀是兼容不同浏览器
-moz-transform:skew(-12deg) rotate(-4deg);
-o-transform: skew(-12deg) rotate(-4deg);
-ms-transform: skew(-12deg) rotate(-4deg);
-webkit-box-shadow: 0 8px 20px rgba(0, 0, 0, 0.6);
投影,左边投影为0,下方为8,虚化半径为20,投影颜色黑色,透明度为6%。下方同理,前缀是兼容不同浏览器
-moz-box-shadow: 0 8px 20px rgba(0, 0, 0, 0.6);
-o-box-shadow: 0 8px 20px rgba(0, 0, 0, 0.6);
box-shadow: 0 8px 16px rgba(0, 0, 0, 0.6);
behavior: url(ie-css3.htc);
兼容IE浏览器
第二段代码基本一样,只不过:after元素的内容之后插入新内容

回答2:

li:after和li:before是伪类属性,after是之后的意思,before是之前的的意思,前面简单的就不用一一件事吧,见识一下后面的css3的部分, -webkit-box-shadow: 0 8px 20px rgba(0, 0, 0, 0.6);apple浏览器兼容

-moz-box-shadow: 0 8px 20px rgba(0, 0, 0, 0.6); firefox浏览器兼容

-o-box-shadow: 0 8px 20px rgba(0, 0, 0, 0.6); opera浏览器兼容

box-shadow: 0 8px 16px rgba(0, 0, 0, 0.6); //这是设置阴影

-webkit-transform: skew(12deg) rotate(4deg); //apple浏览器下旋转12度

-moz-transform:skew(12deg) rotate(4deg);

-o-transform: skew(12deg) rotate(4deg);

-ms-transform: skew(12deg) rotate(4deg);

回答3:

:before和 :after都是伪元素。 都可以在被选元素的内容中插入内容,使用 content 属性来指定要插入的内容。两个不同之外在于,:before是在被选元素的内容的最前插入内容,:after被选元素的内容的最后插入内容。
ul.box li:after 表示在类名为box的ul标签下的所有li标签的内容插入一个:after伪元素,然后对这个伪列表设置了一堆样式属性。
ul.box li:before同理

回答4:

请把你疑问的指出来,请不要说你哪都不懂

回答5:

哪里不懂得标出来,把懂得自己剔除掉