当前位置:首页 > CSS

css制作圆环扇形

2026-04-01 16:16:17CSS

使用 CSS 制作圆环扇形

通过 CSS 的 border-radiusclip-pathtransform 属性,可以轻松实现圆环扇形效果。以下是几种常见方法:

css制作圆环扇形

方法一:使用 clip-path 和伪元素

通过 clip-path 裁剪出扇形区域,结合伪元素叠加圆环效果。

css制作圆环扇形

<div class="fan"></div>
.fan {
  position: relative;
  width: 200px;
  height: 200px;
  border-radius: 50%;
  background: #ff9a00;
}

.fan::before {
  content: '';
  position: absolute;
  top: 10px;
  left: 10px;
  width: 180px;
  height: 180px;
  border-radius: 50%;
  background: white;
  clip-path: polygon(50% 50%, 50% 0, 100% 0);
}

方法二:使用 conic-gradient 渐变

通过圆锥渐变创建扇形,再叠加白色圆环实现。

.fan {
  width: 200px;
  height: 200px;
  border-radius: 50%;
  background: conic-gradient(#ff9a00 0deg 90deg, transparent 90deg);
  position: relative;
}

.fan::after {
  content: '';
  position: absolute;
  top: 10px;
  left: 10px;
  width: 180px;
  height: 180px;
  border-radius: 50%;
  background: white;
}

方法三:SVG 替代方案

如果兼容性要求高,可以直接使用 SVG 实现。

<svg width="200" height="200" viewBox="0 0 200 200">
  <path d="M100,100 L100,0 A100,100 0 0,1 200,100 Z" fill="#ff9a00"/>
  <circle cx="100" cy="100" r="90" fill="white"/>
</svg>

关键参数说明

  • 角度控制:在 clip-pathconic-gradient 中调整角度值(如 90deg)可改变扇形大小。
  • 圆环宽度:通过伪元素的尺寸差(如外层 200px,内层 180px)控制圆环粗细。
  • 动态效果:结合 CSS 动画(@keyframes)可实现旋转等交互效果。

以上方法均支持现代浏览器,如需兼容旧版本,建议使用 SVG 方案。

标签: 扇形圆环
分享给朋友:

相关文章

vue实现扇形图统计

vue实现扇形图统计

实现扇形图统计的方法 在Vue中实现扇形图统计,通常可以通过以下两种方式完成:使用原生Canvas绘制或借助第三方图表库(如ECharts或Chart.js)。以下是具体实现方法。 使用Canvas…

css制作扇形图

css制作扇形图

使用CSS制作扇形图 利用conic-gradient实现基础扇形 通过CSS的conic-gradient可以快速创建扇形效果。定义一个圆形元素并应用角度渐变色: .pie-chart { w…

css 制作扇形

css 制作扇形

使用 CSS 制作扇形 通过 CSS 的 border-radius 和 clip-path 属性可以轻松实现扇形效果。以下是几种常见方法: 使用 border-radius 和 transform…

vue实现圆环进度

vue实现圆环进度

Vue 实现圆环进度的方法 使用 SVG 实现圆环进度 SVG 的 circle 和 stroke-dasharray 属性可以轻松实现圆环进度效果。以下是一个示例代码: <template&…

vue实现扇形菜单

vue实现扇形菜单

Vue 实现扇形菜单 使用 CSS 和 Vue 动态计算位置 通过 Vue 的动态数据绑定和 CSS 的 transform 属性,可以实现扇形菜单的布局。核心是利用三角函数计算每个菜单项的位置。…

vue 实现扇形图表

vue 实现扇形图表

使用 SVG 和 Vue 实现扇形图表 在 Vue 中实现扇形图表可以通过 SVG 的 path 元素结合计算属性动态生成扇形路径。以下是一个完整的实现方法: 安装依赖(如需要动画效果): npm…