星级评定通常用于用户界面中,以图形化的方式表示评分或等级。CSS(层叠样式表)是一种用于描述HTML或XML(包括SVG、MathML等各种XML方言)文档样式的样式表语言。通过CSS,可以控制网页上元素的布局、颜色、字体等视觉效果。
星级评定广泛应用于电商网站的商品评价、酒店预订的评分展示、视频网站的视频评分等场景。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>星级评定</title>
<style>
.star-rating {
display: inline-block;
font-size: 2em;
color: #FFD700;
}
.star-rating .star {
display: inline-block;
}
.star-rating .star::before {
content: '★';
}
.star-rating .star.empty::before {
content: '☆';
color: #ccc;
}
</style>
</head>
<body>
<div class="star-rating" data-rating="3">
<span class="star"></span>
<span class="star"></span>
<span class="star"></span>
<span class="star empty"></span>
<span class="star empty"></span>
</div>
</body>
</html>
div
容器包含多个span
元素,每个span
代表一个星级。.star-rating
:设置容器为内联块级元素,并设置字体大小和颜色。.star
:设置星级为内联块级元素。.star::before
:使用伪元素在每个星级前添加一个实心星星。.star.empty::before
:使用伪元素在空星级前添加一个空心星星,并设置颜色为灰色。问题:星级评定在不同屏幕尺寸下显示不一致。
原因:可能是由于字体大小或容器宽度没有适配不同屏幕尺寸。
解决方法:
rem
或em
单位设置字体大小,使其相对于根元素或父元素进行缩放。@media (max-width: 600px) {
.star-rating {
font-size: 1.5em;
}
}
通过以上方法,可以确保星级评定在不同设备上显示一致。
领取专属 10元无门槛券
手把手带您无忧上云