当前位置:首页 > CSS

css制作扇形图

2026-01-08 18:48:54CSS

使用CSS制作扇形图

方法一:使用clip-pathtransform

通过CSS的clip-pathtransform属性可以快速实现扇形效果。定义一个圆形元素,然后裁剪出扇形部分。

.fan-shape {
  width: 200px;
  height: 200px;
  background-color: #3498db;
  border-radius: 50%;
  clip-path: polygon(50% 50%, 50% 0, 100% 0, 50% 50%);
  transform: rotate(30deg); /* 调整旋转角度控制扇形位置 */
}

方法二:使用conic-gradient

conic-gradient可以创建锥形渐变,非常适合制作扇形图。通过定义颜色起点和终点实现扇形效果。

css制作扇形图

.pie-chart {
  width: 200px;
  height: 200px;
  border-radius: 50%;
  background: conic-gradient(
    #e74c3c 0deg 90deg,
    #3498db 90deg 180deg,
    #2ecc71 180deg 270deg,
    #f1c40f 270deg 360deg
  );
}

方法三:利用伪元素和旋转

通过伪元素和旋转实现扇形。定义一个圆形,用伪元素覆盖部分区域并旋转。

css制作扇形图

.circle {
  width: 200px;
  height: 200px;
  border-radius: 50%;
  background-color: #e74c3c;
  position: relative;
  overflow: hidden;
}

.circle::before {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #3498db;
  transform-origin: 100% 50%;
  transform: rotate(90deg); /* 调整角度控制扇形大小 */
}

方法四:SVG结合CSS

使用SVG的pathcircle元素结合CSS样式实现更复杂的扇形效果。

<svg width="200" height="200" viewBox="0 0 200 200">
  <path d="M100,100 L200,100 A100,100 0 0,1 150,150 Z" fill="#e74c3c" />
</svg>

方法五:CSS变量动态控制扇形角度

通过CSS变量动态调整扇形角度,适合需要交互的场景。

.fan-dynamic {
  --angle: 90deg;
  width: 200px;
  height: 200px;
  background: conic-gradient(#3498db 0deg var(--angle), transparent var(--angle) 360deg);
  border-radius: 50%;
}
document.querySelector('.fan-dynamic').style.setProperty('--angle', '120deg');

注意事项

  • 使用clip-path时注意浏览器兼容性。
  • conic-gradient在旧版浏览器中可能需要前缀或替代方案。
  • 动态调整扇形角度时,确保JavaScript与CSS变量配合正确。

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

相关文章

css制作

css制作

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

css制作三角形

css制作三角形

使用 border 属性创建三角形 通过设置元素的 border 属性可以实现三角形效果。原理是利用边框的交界处形成的斜边。 .triangle { width: 0; height: 0;…

css网页制作教程

css网页制作教程

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

css如何制作圆

css如何制作圆

使用 border-radius 属性制作圆 通过设置 border-radius 属性为元素添加圆角效果。当 border-radius 的值等于元素宽度和高度的一半时,元素会呈现圆形。 .cir…

css 制作导航

css 制作导航

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

css制作教程

css制作教程

CSS 基础概念 CSS(层叠样式表)用于控制网页的视觉表现,包括布局、颜色、字体等。它与HTML结合使用,HTML负责结构,CSS负责样式。 基本语法结构 CSS规则由选择器和声明块组成: 选择…