当前位置:首页 > CSS

css制作椭圆盒子

2026-04-02 06:53:49CSS

使用CSS制作椭圆盒子

通过CSS的border-radius属性可以轻松将矩形盒子变为椭圆形状。以下是几种实现方法:

方法一:基础椭圆 通过设置border-radius为50%可将正方形变为正圆,矩形变为椭圆:

.ellipse-box {
  width: 200px;
  height: 100px;
  background-color: #3498db;
  border-radius: 50%;
}

方法二:精确控制弧度 使用斜杠语法分别指定水平和垂直半径:

.ellipse-box {
  width: 300px;
  height: 150px;
  background: #2ecc71;
  border-radius: 150px/75px; /* 水平半径/垂直半径 */
}

方法三:四角独立控制 为每个角单独设置椭圆弧度:

.ellipse-box {
  width: 250px;
  height: 120px;
  background: #e74c3c;
  border-radius: 50% 20% 30% 40% / 60% 30% 70% 50%;
}

方法四:使用CSS变量 通过变量实现动态调整:

.ellipse-box {
  --width: 180px;
  --height: 90px;
  width: var(--width);
  height: var(--height);
  background: #9b59b6;
  border-radius: calc(var(--width)/2) / calc(var(--height)/2);
}

进阶技巧

添加渐变效果

.ellipse-box {
  width: 220px;
  height: 110px;
  border-radius: 50%;
  background: linear-gradient(45deg, #1abc9c, #3498db);
}

带边框的椭圆

.ellipse-box {
  width: 280px;
  height: 140px;
  border-radius: 50%;
  border: 5px dashed #f39c12;
  background-color: rgba(255, 255, 255, 0.7);
}

椭圆阴影效果

css制作椭圆盒子

.ellipse-box {
  width: 240px;
  height: 120px;
  border-radius: 50%;
  box-shadow: 5px 5px 15px rgba(0,0,0,0.3);
  background: #e67e22;
}

这些方法可根据实际需求组合使用,通过调整尺寸比例和弧度值可以获得不同形状的椭圆效果。现代浏览器对这些属性的支持都非常完善,无需考虑兼容性问题。

标签: 椭圆盒子
分享给朋友:

相关文章

react盒子平移如何实现

react盒子平移如何实现

实现React盒子平移的方法 使用CSS Transform属性 通过CSS的transform: translate()属性实现平移效果。在React中可以直接通过内联样式或CSS类名应用。 &l…

css制作椭圆

css制作椭圆

使用 border-radius 属性创建椭圆 通过调整 border-radius 的百分比值,可以轻松将矩形元素变为椭圆。水平半径和垂直半径分别设置为 50% 和不同的值,形成椭圆形状。…

css盒子怎么制作

css盒子怎么制作

制作CSS盒子的基本方法 使用CSS的box-shadow属性可以轻松创建各种盒子效果。以下是一个简单的盒子样式示例: .box { width: 200px; height: 200px;…

uniapp盒子模型

uniapp盒子模型

uniapp 盒子模型基础概念 uniapp的盒子模型遵循标准的CSS盒子模型,由内容(content)、内边距(padding)、边框(border)和外边距(margin)组成。每个元素都被视为一…

css盒子图片制作

css盒子图片制作

CSS盒子图片制作方法 使用background-image属性 通过CSS的background-image属性可以为盒子添加背景图片。示例代码: .box { width: 300px;…

vue实现盒子左右滑动

vue实现盒子左右滑动

实现盒子左右滑动的Vue方案 使用CSS和事件监听 通过CSS的transform属性结合Vue的事件监听实现滑动效果。在模板中定义可滑动的容器,通过@touchstart、@touchmove等事件…