【发布时间】:2023-03-19 09:10:02
【问题描述】:
我试图用 CSS 为两个 div 完成这个边框:
我尝试只使用border-radius,但两个部分圆圈没有压在一起:http://jsfiddle.net/uwz6L79w/
.left {
position: absolute;
left: 0;
top: 0;
width: 100px;
height: 100px;
border-width: 4px;
border-color: black white black black;
border-style: solid;
border-radius: 60px
}
.right {
position: absolute;
left: 104px;
top: 0;
width: 100px;
height: 100px;
border-width: 4px;
border-color: black black black white;
border-style: solid;
border-radius: 60px;
}
<div class="left"></div>
<div class="right"></div>
我可以将它们进一步压在一起,但我必须让一个 div 与另一个重叠,如下所示:http://jsfiddle.net/uwz6L79w/1/。
.left {
position: absolute;
left: 0;
top: 0;
width: 100px;
height: 100px;
border-width: 4px;
border-color: black white black black;
border-style: solid;
border-radius: 60px
}
.right {
position: absolute;
left: 70px;
top: 0;
width: 100px;
height: 100px;
border-width: 4px;
border-color: black black black white;
border-style: solid;
border-radius: 60px;
background: #f2f2f2;
}
<div class="left"></div>
<div class="right"></div>
有谁知道我如何在不重叠 div 的情况下做到这一点?
【问题讨论】:
-
是的,有可能。看看this link 并尝试从 infinity 开始。
-
你也可以用伪元素重叠来做到这一点。
-
你的第二个 sn-p 对我来说很好。您能否提供一张屏幕截图,说明您使用的是什么浏览器?
-
@Bergi:OP 不希望它重叠。也就是说,如果您向其中一个
div添加背景,您会看到它们已将第二个div的一部分置于第一个之上。 -
@Harry:是的,但是示例没有背景,所以我不确定问题出在哪里。也许有比避免重叠更好的方法来解决问题?
标签: html css css-shapes