- [] JD购物车
- .伪元素:使用::before显示商品数量[从后台获取数据]
- .初始化:button取消边框、轮廓、背景
- .定位:父相子绝,使伪元素右上定位
-
-
.cart::before {
content: '8';
position: absolute;
top: -10px;
right: -10px;
}
- [] 进度条
- .伪元素::before、::after
- .内联变量
- .自定义属性 data-
- .CSS属性函数 attr()、计算函数 calc()
- .定位 position
- .盒阴影 box-shadow
-
- [HTML]
-
<div class="bar" style="--per:10;--color:#f40;" data-txt="考勤">
<div></div>
</div>
<div class="bar" style="--per:40;--color:#890;" data-txt="作业">
<div></div>
</div>
<div class="bar" style="--per:20;--color:#089;" data-txt="笔记">
<div></div>
</div>
<div class="bar" style="--per:30;--color:#908;" data-txt="互动">
<div></div>
</div>
- [CSS]
-
.bar {
position: relative;
width: 280px;
height: 20px;
margin: 2rem auto;
border-radius: 20px;
border: 4px solid transparent;
box-shadow: 0 0 0 1px var(--color);
}
.bar div {
width: calc(var(--per)*1%);
height: 100%;
background-color: var(--color);
border-radius: 20px;
}
.bar::before {
content: attr(data-txt);
position: absolute;
top: -10px;
left: -40px;
}
.bar::after {
counter-reset: per var(--per);
content: counter(per)'%';
position: absolute;
top: -10px;
right: -40px;
}
- [] 模拟有序列表 - list
- 方案1. 利于伪元素配合属性获取实现[使用data-定义属性]
- 方案2. 也可以使用 计数器 counter 实现[计数器支持变量哦]
-
HTML
CSS
JS
-
.ul-item::before {
content: attr(data-ind)'. ';
}
- [] 模拟无序列表 - list
- . 利于伪元素配合 CSS Entity 实现
-
-
.ul-entity li::before {
content: '\260E'' ';
}
- [] 环环相扣-RING
-
- [] 时钟clock
- [] 倒影
- . 一个伪元素作为文字
- . 一个伪元素作为渐变背景遮罩:透明到白色或白色透明到白色
- . 伪元素会继承文字阴影,需要单独去掉伪元素的阴影效果
- hi,there
- [] 标题修饰
- . 利用::before和::after划线,配合弹性布局实现
- . 更多案例,参考开课啦标题设计
- 注册
-
.headline-pse {
display: flex;
align-items: center;
text-align: center;
font-size: 24px;
margin: 1rem auto;
}
.headline-pse::before, .headline-pse::after {
content: '';
flex: 1;
height: 1px;
background-color: #333;
}
- [ ]
- 1. 如何为文字两侧增加空白
- 2. 不使用伪元素如何实现?[提示:使用小高度、大字体和边框,把文字挤下来]
-
注册