当前位置:首页 > CSS

使用css制作同心圆

2026-02-27 02:04:29CSS

使用CSS制作同心圆

同心圆可以通过CSS的border-radiusposition属性实现,核心思路是利用多个嵌套的div元素,设置相同的圆心但不同的半径。

方法一:使用多个嵌套元素

创建多个div,通过绝对定位和border-radius: 50%实现同心圆效果。

<div class="circle-container">
  <div class="circle-outer">
    <div class="circle-middle">
      <div class="circle-inner"></div>
    </div>
  </div>
</div>
.circle-container {
  position: relative;
  width: 300px;
  height: 300px;
}

.circle-outer {
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #3498db;
  border-radius: 50%;
}

.circle-middle {
  position: absolute;
  width: 66%;
  height: 66%;
  background-color: #e74c3c;
  border-radius: 50%;
  top: 17%;
  left: 17%;
}

.circle-inner {
  position: absolute;
  width: 33%;
  height: 33%;
  background-color: #2ecc71;
  border-radius: 50%;
  top: 33%;
  left: 33%;
}

方法二:使用伪元素

通过单个元素和其伪元素(::before::after)减少HTML结构。

<div class="concentric-circle"></div>
.concentric-circle {
  position: relative;
  width: 200px;
  height: 200px;
  background-color: #3498db;
  border-radius: 50%;
}

.concentric-circle::before {
  content: '';
  position: absolute;
  width: 66%;
  height: 66%;
  background-color: #e74c3c;
  border-radius: 50%;
  top: 17%;
  left: 17%;
}

.concentric-circle::after {
  content: '';
  position: absolute;
  width: 33%;
  height: 33%;
  background-color: #2ecc71;
  border-radius: 50%;
  top: 33%;
  left: 33%;
}

方法三:使用CSS变量

通过CSS变量统一控制圆心和半径,便于调整。

:root {
  --circle-size: 200px;
  --color-outer: #3498db;
  --color-middle: #e74c3c;
  --color-inner: #2ecc71;
}

.circle-var {
  position: relative;
  width: var(--circle-size);
  height: var(--circle-size);
  background-color: var(--color-outer);
  border-radius: 50%;
}

.circle-var::before {
  content: '';
  position: absolute;
  width: calc(var(--circle-size) * 0.66);
  height: calc(var(--circle-size) * 0.66);
  background-color: var(--color-middle);
  border-radius: 50%;
  top: 17%;
  left: 17%;
}

.circle-var::after {
  content: '';
  position: absolute;
  width: calc(var(--circle-size) * 0.33);
  height: calc(var(--circle-size) * 0.33);
  background-color: var(--color-inner);
  border-radius: 50%;
  top: 33%;
  left: 33%;
}

注意事项

  • 确保外层容器具有position: relative,内层圆通过position: absolute定位。
  • 使用百分比单位(如width: 33%)或calc()函数动态计算尺寸,保持比例一致。
  • 调整topleft属性时需根据圆的尺寸微调,确保圆心对齐。

使用css制作同心圆

标签: 同心圆css
分享给朋友:

相关文章

css网页制作

css网页制作

CSS网页制作基础 CSS(层叠样式表)用于控制网页的视觉表现,包括布局、颜色、字体等。以下是核心知识点: 选择器与样式规则 /* 标签选择器 */ p { color: #333;…

css制作导航栏

css制作导航栏

水平导航栏 使用 display: inline-block 或 flexbox 创建水平导航栏。设置背景色、内边距和悬停效果增强交互性。 <nav class="horizontal-nav…

css制作表格

css制作表格

使用HTML和CSS创建表格 HTML中的<table>元素用于创建表格,结合CSS可以调整样式。以下是一个基础示例: <table> <tr> &…

css制作导航条

css制作导航条

导航条的基本结构 使用HTML的<nav>标签和<ul>列表创建导航条的基本结构。导航项通常包含链接,示例代码如下: <nav> <ul>…

css div 制作导航菜单

css div 制作导航菜单

基本导航菜单结构 使用HTML创建一个简单的导航菜单结构,通常使用<ul>和li>列表实现。每个菜单项用<a>标签包裹以实现链接功能。 <div class="n…

css制作扇形

css制作扇形

使用 CSS 制作扇形 方法一:利用 border-radius 和 transform 通过设置 border-radius 和 transform 属性,可以创建一个扇形。以下是一个示例代码:…