当前位置:首页 > CSS

css制作星星

2026-02-27 09:17:37CSS

使用纯CSS创建星星

通过CSS的伪元素和transform属性可以绘制五角星形状。以下代码利用::before::after伪元素构建星形:

css制作星星

.star {
  position: relative;
  display: inline-block;
  width: 0;
  height: 0;
  margin: 50px;
  border-right: 50px solid transparent;
  border-bottom: 35px solid gold;
  border-left: 50px solid transparent;
  transform: rotate(35deg);
}

.star::before {
  content: '';
  position: absolute;
  top: -22px;
  left: -53px;
  width: 0;
  height: 0;
  border-right: 50px solid transparent;
  border-bottom: 35px solid gold;
  border-left: 50px solid transparent;
  transform: rotate(-70deg);
}

.star::after {
  content: '';
  position: absolute;
  top: 2px;
  left: -55px;
  width: 0;
  height: 0;
  border-right: 50px solid transparent;
  border-bottom: 35px solid gold;
  border-left: 50px solid transparent;
  transform: rotate(-35deg);
}

使用CSS clip-path绘制星星

现代浏览器支持用clip-path创建复杂形状,这种方法更简洁:

css制作星星

.clip-star {
  width: 100px;
  height: 100px;
  background: gold;
  clip-path: polygon(
    50% 0%, 
    61% 35%, 
    98% 35%, 
    68% 57%, 
    79% 91%, 
    50% 70%, 
    21% 91%, 
    32% 57%, 
    2% 35%, 
    39% 35%
  );
}

SVG与CSS结合方案

通过内联SVG配合CSS控制样式,可实现更灵活的星星效果:

<div class="svg-star">
  <svg viewBox="0 0 100 100">
    <polygon points="50,0 61,35 98,35 68,57 79,91 50,70 21,91 32,57 2,35 39,35" />
  </svg>
</div>
.svg-star svg {
  width: 100px;
  height: 100px;
  fill: gold;
  stroke: #000;
  stroke-width: 1px;
}

.svg-star:hover svg {
  fill: orange;
  transform: rotate(15deg);
  transition: all 0.3s ease;
}

动画闪烁星星效果

添加CSS动画实现星星闪烁效果:

.twinkle-star {
  width: 50px;
  height: 50px;
  background: gold;
  clip-path: polygon(
    50% 0%, 61% 35%, 98% 35%, 68% 57%, 
    79% 91%, 50% 70%, 21% 91%, 32% 57%, 
    2% 35%, 39% 35%
  );
  animation: twinkle 1.5s infinite alternate;
}

@keyframes twinkle {
  0% { opacity: 0.3; transform: scale(0.8); }
  100% { opacity: 1; transform: scale(1.1); }
}

标签: 星星css
分享给朋友:

相关文章

纯css制作tab菜单

纯css制作tab菜单

纯CSS制作Tab菜单的方法 使用radio input控制切换 通过<input type="radio">和<label>元素配合实现无JavaScript的Tab切换效果…

旋转相册制作css

旋转相册制作css

旋转相册制作CSS 旋转相册通常通过CSS动画和3D变换实现,以下是一个完整的实现方法: 基础HTML结构 <div class="photo-album"> <div cla…

css制作软件

css制作软件

CSS制作工具推荐 在线CSS生成器 CSS Generator:提供多种CSS效果(如阴影、渐变、动画)的实时生成与代码导出。 EnjoyCSS:可视化界面调整参数,自动生成复杂CSS代码…

css制作二级菜单

css制作二级菜单

CSS制作二级菜单的方法 通过纯CSS实现二级菜单主要依赖HTML结构嵌套和CSS的:hover伪类选择器。以下是具体实现方式: HTML结构 <ul class="main-menu"&g…

css制作六边形

css制作六边形

使用 CSS 制作六边形 方法一:使用 clip-path 属性 通过 clip-path 直接定义六边形的路径,简单高效且支持动画效果。 .hexagon { width: 100px;…

css制作详情页

css制作详情页

CSS 制作详情页的关键方法 布局与结构设计 使用 flexbox 或 grid 实现响应式布局。flexbox 适合单行或单列排列的内容,grid 适合复杂网格布局。 .container {…