当前位置:首页 > CSS

css制作扇形图

2026-03-31 22:49:14CSS

使用CSS制作扇形图

方法一:利用border-radius和transform

通过设置元素的border-radius为50%创建圆形,再利用transform属性旋转部分元素形成扇形。

<div class="pie-chart">
  <div class="slice slice1"></div>
  <div class="slice slice2"></div>
</div>
.pie-chart {
  width: 200px;
  height: 200px;
  position: relative;
  border-radius: 50%;
  overflow: hidden;
}

.slice {
  position: absolute;
  width: 100%;
  height: 100%;
  background: #3498db;
  transform-origin: center right;
}

.slice1 {
  transform: rotate(90deg);
  background: #e74c3c;
}

.slice2 {
  transform: rotate(180deg);
  background: #2ecc71;
}

方法二:使用conic-gradient

CSS的conic-gradient属性可以直接创建扇形效果,无需多个HTML元素。

<div class="pie-chart"></div>
.pie-chart {
  width: 200px;
  height: 200px;
  border-radius: 50%;
  background: conic-gradient(
    #e74c3c 0% 30%,
    #3498db 30% 70%,
    #2ecc71 70% 100%
  );
}

方法三:SVG实现

使用SVG的<circle><path>元素可以创建精确的扇形图。

<svg width="200" height="200">
  <circle cx="100" cy="100" r="80" fill="none" stroke="#e74c3c" stroke-width="160" stroke-dasharray="80 320" />
  <circle cx="100" cy="100" r="80" fill="none" stroke="#3498db" stroke-width="160" stroke-dasharray="160 240" transform="rotate(72 100 100)" />
</svg>

方法四:CSS变量动态控制

结合CSS变量可以动态调整扇形角度。

css制作扇形图

<div class="pie-chart" style="--percentage: 30%;"></div>
.pie-chart {
  width: 200px;
  height: 200px;
  border-radius: 50%;
  background: conic-gradient(#e74c3c 0 var(--percentage), #eee var(--percentage) 100%);
}

注意事项

  • 考虑浏览器兼容性,特别是conic-gradient在旧版本浏览器可能不支持
  • 添加动画效果时使用transition@keyframes
  • 对于复杂图表建议使用JavaScript库如Chart.js或D3.js

标签: 扇形css
分享给朋友:

相关文章

css网页制作教程

css网页制作教程

CSS网页制作教程 CSS(层叠样式表)是用于控制网页外观和布局的核心技术。以下是CSS网页制作的关键步骤和技巧: 基础语法与引入方式 CSS规则由选择器和声明块组成: 选择器 { 属性: 值…

网页制作 css

网页制作 css

CSS 基础语法 CSS(层叠样式表)用于控制网页的样式和布局。基本语法由选择器和声明块组成: 选择器 { 属性: 值; } 例如设置段落文字颜色为红色: p { color: red;…

css制作钢琴块

css制作钢琴块

使用CSS制作钢琴块 钢琴块可以通过HTML和CSS的配合实现,主要利用flexbox布局和伪元素来模拟钢琴的黑白键排列。 HTML结构 <div class="piano"> &l…

css制作搜索框

css制作搜索框

制作搜索框的基本结构 使用HTML创建一个简单的搜索框结构,包含输入框和搜索按钮: <div class="search-box"> <input type="text" pl…

制作css开关

制作css开关

使用纯CSS创建开关 HTML结构需要包含一个隐藏的复选框和一个关联的标签元素: <label class="switch"> <input type="checkbox"&g…

css制作

css制作

CSS 基础语法 CSS(层叠样式表)用于描述HTML元素的样式。一个基本的CSS规则由选择器和声明块组成。选择器指定要样式化的HTML元素,声明块包含一个或多个属性-值对,用花括号 {} 包裹。…