类似下面这种能实现百分比对比效果的,有没有实现的思路,貌似现在的前端菜的厉害,包括我,没有一个人会实现的,都只会粘贴复制
该回答引用ChatGPT
现动态梯形和进度模型可以通过CSS3中的transform和transition属性来实现。
动态梯形的实现思路:
1、首先需要创建一个正方形的div元素,然后使用CSS3的transform: skew()属性对该元素进行倾斜处理,将其变成一个梯形。
2、然后,通过CSS3的transition属性来控制梯形的宽度,从而实现动态的效果。比如可以在:hover时改变梯形的宽度。
3、最后,可以使用CSS3的伪元素:before和:after来实现梯形的边框。
以下是一个简单的动态梯形的实现代码:
<div class="trapezoid"></div>
css
Copy code
.trapezoid {
width: 100px;
height: 50px;
background-color: #f00;
transform: skew(20deg);
transition: width 1s;
}
.trapezoid:hover {
width: 200px;
}
.trapezoid:before,
.trapezoid:after {
content: "";
position: absolute;
bottom: 0;
border: 25px solid transparent;
}
.trapezoid:before {
border-left-color: #f00;
left: -50px;
}
.trapezoid:after {
border-right-color: #f00;
right: -50px;
}
进度模型的实现思路:
首先需要创建一个进度条的div元素,然后使用CSS3的transform: skew()属性将其变成一个梯形。
然后,使用CSS3的background-gradient属性来创建进度条的颜色。
最后,可以使用CSS3的伪元素:before和:after来实现进度条的边框。
以下是一个简单的进度模型的实现代码:
<div class="progress"></div>
css
Copy code
.progress {
width: 200px;
height: 20px;
background-image: linear-gradient(to right, #f00 50%, #fff 50%);
transform: skew(20deg);
transition: width 1s;
}
.progress:before,
.progress:after {
content: "";
position: absolute;
bottom: 0;
border: 10px solid transparent;
}
.progress:before {
border-left-color: #f00;
left: -20px;
}
.progress:after {
border-right-color: #fff;
right: -20px;
}
以上是一个简单的实现示例,具体实现方式可以根据需求进行修改和扩展。
1.css设置两个div为梯形,中间写vs圆圈的div,css再去设置,然后定位定到他两中间
2.不要去评价任何一个职业职位,你觉得前端菜为什么不去学别的呢?没有前端你能看到那么多页面?没有前端页面谁去画,是你没有遇到牛逼的ok?