当前位置:首页 > CSS

css制作星星

2026-02-27 09:17:37CSS

使用纯CSS创建星星

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

.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创建复杂形状,这种方法更简洁:

.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动画实现星星闪烁效果:

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 制作导航

css 制作导航

基础导航栏制作 使用HTML和CSS创建一个水平导航栏。HTML结构通常使用<ul>和<li>标签,CSS负责样式布局。 <nav> <ul class…

css 导航栏制作

css 导航栏制作

水平导航栏制作 使用无序列表<ul>和<li>标签构建基础结构,通过CSS将列表项横向排列 <nav> <ul class="horizontal-na…

css制作网站导航

css制作网站导航

使用CSS制作网站导航的方法 水平导航栏 通过display: inline-block或flexbox布局实现水平导航栏。设置背景色、间距和悬停效果增强交互性。 .navbar { backg…

css制作栅格

css制作栅格

CSS 栅格布局基础 CSS Grid 布局是一种强大的二维布局系统,允许开发者通过行和列来设计复杂的网页布局。栅格系统由容器(grid container)和项目(grid items)组成。 定…

css制作图片

css制作图片

使用CSS创建图片效果 CSS可以通过多种方式实现图片的显示、处理和特效。以下是几种常见的方法: 使用background-image属性 在CSS中可以通过background-image属性将图…

css样式表制作

css样式表制作

CSS样式表制作基础 CSS(层叠样式表)用于控制网页的视觉呈现。通过CSS可以定义字体、颜色、布局等样式属性。 基本语法结构 选择器 { 属性: 值; 属性: 值; } 示例代码 body {…