当前位置:首页 > CSS

css制作扇形图

2026-02-26 23:35:09CSS

使用CSS制作扇形图

通过CSS的conic-gradientclip-path属性可以轻松实现扇形图效果。以下是两种常见方法:

css制作扇形图

方法一:conic-gradient 渐变

利用CSS的圆锥渐变直接生成扇形色块,适合展示比例数据:

css制作扇形图

.pie-chart {
  width: 200px;
  height: 200px;
  border-radius: 50%;
  background: conic-gradient(
    #FF6384 0% 30%,
    #36A2EB 30% 70%,
    #FFCE56 70% 100%
  );
}
  • 每个颜色段的百分比值表示该扇形的起始和结束角度
  • 通过调整百分比可控制各扇形的大小比例

方法二:clip-path 裁剪

通过裁剪圆形元素实现更复杂的扇形交互效果:

.sector {
  width: 100px;
  height: 100px;
  background: #4CAF50;
  border-radius: 50%;
  clip-path: polygon(50% 50%, 100% 0, 100% 100%);
  transform: rotate(45deg);
}
  • clip-path定义裁剪区域的三点坐标(中心点+两个边缘点)
  • transform控制扇形旋转角度

动画效果增强

为扇形添加悬停动画:

.sector {
  transition: transform 0.3s;
}
.sector:hover {
  transform: rotate(45deg) scale(1.1);
  z-index: 1;
}

注意事项

  • 对于旧版浏览器需添加-webkit-前缀
  • 精确控制角度时建议使用CSS变量计算
  • 多扇形组合时注意层叠顺序(z-index)

完整示例可通过CodePen等平台查看实时效果,这种方法无需JavaScript即可实现可视化数据展示。

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

相关文章

css怎么制作时钟

css怎么制作时钟

使用CSS制作时钟 通过CSS和少量JavaScript可以创建一个动态时钟。以下是实现方法: HTML结构 <div class="clock"> <div cla…

css 制作购物网站

css 制作购物网站

布局设计 使用CSS Grid或Flexbox创建响应式布局。Grid适合整体页面结构,Flexbox适合局部组件排列。定义网格模板区域,如头部、导航、商品展示区、侧边栏和页脚。 .containe…

css制作时间轴

css制作时间轴

使用 Flexbox 布局制作时间轴 通过 Flexbox 可以快速实现水平或垂直时间轴。以下是一个垂直时间轴的示例代码: .timeline { display: flex; flex-d…

制作外置css

制作外置css

创建外置CSS文件 新建一个文本文件,将其命名为style.css。确保文件扩展名为.css,而不是.txt。使用代码编辑器(如VS Code、Sublime Text等)打开该文件进行编辑。 /*…

css二级菜单制作

css二级菜单制作

使用纯CSS制作二级菜单 HTML结构采用嵌套的<ul>和<li>标签,主菜单项包含子菜单: <nav class="menu"> <ul>…

css图标制作

css图标制作

使用CSS制作图标的方法 纯CSS绘制基础形状 通过CSS的border、width、height等属性可以绘制简单图标: .heart { width: 20px; height: 20p…