【发布时间】:2019-01-24 06:02:18
【问题描述】:
我正在尝试将一个环分成 3 段,每个段的文本都居中。我可以弄清楚文本部分,但在我尝试制作戒指的方式中,我似乎无法将它分成 3 个相等的部分。
理想情况下,我想用边框来做这件事,这样我就可以给它们添加箭头,我试图通过分割一个圆圈来做到这一点,但在将文本放在我需要的地方时遇到了问题。我想把它主要保留给 CSS,但我知道片段上的箭头可能会造成障碍。
这就是我想要做的事情
https://jsfiddle.net/wrqpas09/
.segment {
position: absolute;
border: 20px solid #000;
display: inline-block;
min-width: 200px;
min-height: 200px;
border-radius: 50%;
top: 0;
left: 0;
border-color: transparent;
-ms-transform: rotate(45deg);
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}
.s1 {
border-top-color: green;
left: 2px
}
.s2 {
border-right-color: red;
top: 2px;
left: 2px
}
.s3 {
border-bottom-color: blue;
top: 2px;
}
.s4 {
border-left-color: #000;
}
<div class="segment s1"></div>
<div class="segment s2"></div>
<div class="segment s3"></div>
<div class="segment s4"></div>
【问题讨论】:
-
就我个人而言,我可能会走 SVG 路线,但如果你不介意它是多个元素,它也可以在纯 css 中完成。
-
@ChrisW。 SVG 是我的后口袋计划,但我知道当你试图在 ie11 中保持它的响应时,SVG 会有点不稳定。我对多种元素持开放态度。我希望它本质上被分解为包含内容的段元素。这只是一个快速的代码 sn-p 来展示我希望如何构建它。 (与圆圈相反,圆圈内有路线)
标签: html css css-shapes