css border-left 怎么设置 border 展示为椭圆

通过 border-left 实现左侧边框呈现椭圆效果,核心思路是利用 CSS 的 border-radius(圆角)结合宽高 / 边框宽度的搭配来模拟椭圆,因为单纯的 border-left 本身是矩形边框,无法直接变成椭圆,需要通过元素样式组合来实现。

方法 1:纯边框实现椭圆左侧边框(常用)

这种方式通过给元素设置左侧边框,并利用 border-radius 将边框上下两端做成圆角,形成椭圆 / 半圆的视觉效果:

css

css 复制代码
/* 椭圆左侧边框示例 */
.ellipse-border-left {
  width: 100px;       /* 元素宽度(可根据需求调整) */
  height: 80px;       /* 元素高度(决定椭圆的纵向尺寸) */
  border-left: 10px solid #007bff; /* 左侧边框:宽度+颜色 */
  /* 关键:border-radius 上下设为 50%(椭圆核心),左右设为 0 */
  border-radius: 0 0 50% 50% / 0 0 100% 100%; 
  /* 也可以简写为:border-radius: 0 0 50px 50px; (数值≈边框+元素高度的一半) */
  background: #f5f5f5; /* 背景色,方便看效果 */
}
  • 关键解释border-radius/ 前是水平圆角,后是垂直圆角;设置 0 0 50% 50% / 0 0 100% 100% 能让左侧边框的上下两端完全圆弧化,配合边框宽度和元素高度,形成椭圆边框。
  • 效果 :左侧会呈现一个椭圆(半圆)的边框,高度由元素 height 决定,粗细由 border-left-width 决定。

方法 2:伪元素实现独立的椭圆左侧边框(更灵活)

如果不想影响原元素的样式,可通过 ::before/::after 伪元素单独做一个椭圆边框,定位到元素左侧:

css

css 复制代码
/* 伪元素实现椭圆左侧边框 */
.box {
  width: 100px;
  height: 80px;
  margin-left: 20px; /* 给椭圆边框留位置 */
  background: #f5f5f5;
  position: relative; /* 相对定位,让伪元素绝对定位 */
}

.box::before {
  content: '';
  position: absolute;
  left: -10px; /* 定位到元素左侧 */
  top: 0;
  bottom: 0;
  width: 10px; /* 椭圆的宽度(对应边框粗细) */
  /* 关键:宽高比例+border-radius: 50% 实现椭圆 */
  border-radius: 50%; /* 50% 圆角直接生成椭圆/圆形 */
  background: #007bff; /* 椭圆填充色(模拟边框) */
}
  • 关键解释 :伪元素设置 border-radius: 50% 后,只要宽高比例不是 1:1,就会呈现椭圆;这里宽(10px)远小于高(继承父元素 80px),所以是竖向椭圆,刚好作为左侧边框。
  • 优势:不修改原元素的边框属性,椭圆边框独立可控,适合复杂布局。

效果验证

将上述代码复制到 HTML 中,就能看到效果:

html

预览

xml 复制代码
<div class="ellipse-border-left">方法1:纯边框椭圆左侧边框</div>
<br>
<div class="box">方法2:伪元素椭圆左侧边框</div>

总结

  1. 单纯 border-left 无法直接变成椭圆,需结合 border-radius 调整圆角,或用伪元素单独制作椭圆;
  2. 方法 1 适合简单场景,通过 border-radius 把左侧边框两端圆角拉满形成椭圆;
  3. 方法 2 更灵活,用伪元素 +border-radius: 50% 生成独立椭圆,作为左侧边框使用。

核心要点:椭圆的形状由「宽高比例」和 border-radius: 50% 共同决定,调整宽高 / 边框宽度就能改变椭圆的粗细和长短。

相关推荐
开开心心就好4 小时前
批量提取PDF中的图片,直接导出原图
前端·javascript·支持向量机·智能手机·pdf·html·启发式算法
Setsuna_F_Seiei7 小时前
前端转型 Agent 开发 05 之 Agent Hooks 与 Checkpointer(让 Agent 从全自动转变人为可掌控)
前端·agent·ai编程
百万蹄蹄向前冲9 小时前
风扇转了一晚上MVP专家团翻车事故
前端·人工智能
默_笙9 小时前
🏛 给 AI 配一间办公室:Harness Engineering 六大模块与它的实现
前端·javascript
linux_cfan10 小时前
videojs v10 源代码系列解读:14 · 谓词守卫:在运行时安全地调用能力
前端·javascript·音视频
kyriewen10 小时前
我扒了 10,221 条 JD:腾讯技术岗 75% 在要 AI
前端·人工智能·ai编程
郑州光合科技余经理11 小时前
同城外卖小程序开发:下单成功后,后台导出能不能对上用户端状态
开发语言·前端·git·后端·uni-app·php·ai编程
IT_陈寒12 小时前
Vue的响应式让我熬到凌晨三点,原来漏了这个小细节
前端·人工智能·后端
Blanche150012 小时前
利用 RAG 为答疑机器人扩展知识范围
前端
天若有情67312 小时前
【纯前端小工具】公历生日转农历,批量查询每年农历生日对应的公历日期(GitHub Pages在线直接用)
前端·javascript·github pages·农历转换·lunisolar·网页小工具