当前位置:首页 > CSS

制作半圆效果 css

2026-01-28 18:12:38CSS

使用 border-radius 创建半圆

通过设置 border-radius 为元素宽度或高度的一半,可以创建半圆效果。例如,宽度为 200px 高度为 100px 的元素,设置 border-radius: 100px 100px 0 0 可生成上半圆。

.semi-circle {
  width: 200px;
  height: 100px;
  background: #3498db;
  border-radius: 100px 100px 0 0;
}

使用 clip-path 裁剪半圆

clip-path 允许通过 SVG 路径或基本形状裁剪元素。使用 ellipsecircle 可以生成半圆。

制作半圆效果 css

.semi-circle {
  width: 200px;
  height: 100px;
  background: #e74c3c;
  clip-path: ellipse(50% 100% at 50% 0%);
}

使用伪元素叠加

通过伪元素 ::before::after 叠加一个圆形,并隐藏下半部分,可以实现半圆效果。

制作半圆效果 css

.semi-circle {
  width: 200px;
  height: 100px;
  position: relative;
  overflow: hidden;
}
.semi-circle::before {
  content: '';
  position: absolute;
  width: 200px;
  height: 200px;
  background: #2ecc71;
  border-radius: 50%;
  bottom: 0;
}

使用 transform 旋转

通过旋转一个完整的圆形,并隐藏溢出部分,可以生成半圆。

.semi-circle {
  width: 100px;
  height: 200px;
  background: #9b59b6;
  border-radius: 100px 0 0 100px;
  transform: rotate(90deg);
}

使用 SVG 实现半圆

SVG 的 pathcircle 元素可以精确绘制半圆,适合需要动态控制的情况。

<svg width="200" height="100">
  <path d="M 0,100 A 100,100 0 0,1 200,100 L 200,0 A 100,100 0 0,0 0,0 Z" fill="#f39c12"/>
</svg>

以上方法可根据需求选择,border-radiusclip-path 适合简单场景,伪元素和 SVG 适合复杂交互或动态效果。

标签: 半圆效果
分享给朋友:

相关文章

js实现滚动条效果

js实现滚动条效果

实现滚动条效果的方法 使用原生JavaScript实现滚动条 通过监听滚动事件,可以动态调整滚动条的位置和样式。以下是一个基础实现示例: // 获取DOM元素 const container = d…

jquery 效果

jquery 效果

jQuery 是一个快速、简洁的 JavaScript 库,简化了 HTML 文档遍历、事件处理、动画和 Ajax 交互。jQuery 提供了丰富的效果(Effects)功能,可以轻松实现元素的动态显…

uniapp 卡片效果

uniapp 卡片效果

uniapp 实现卡片效果的方法 使用 view 和 CSS 样式 通过 view 组件结合 CSS 样式可以快速实现卡片效果。设置圆角、阴影和边距来增强视觉层次感。 <view class=…

vue实现折叠效果

vue实现折叠效果

使用 v-show 或 v-if 实现基础折叠 通过 Vue 的指令 v-show 或 v-if 控制元素的显示与隐藏。v-show 通过 CSS 的 display 属性切换,v-if 直接操作 D…

vue 实现toogle效果

vue 实现toogle效果

使用 v-if 和 v-else 实现切换 通过 Vue 的指令 v-if 和 v-else 可以轻松实现元素的显示与隐藏切换。 <template> <button @c…

vue实现移动效果

vue实现移动效果

使用 CSS 过渡实现移动效果 在 Vue 中,可以通过 v-bind:class 或 v-bind:style 结合 CSS 过渡实现移动效果。定义一个 CSS 类,包含 transition 属性…