我需要一些CSS帮助。很难解释,但是看一下代码片段,我需要黑色部分而不需要红色。
我使用了两个元素,但是一个元素应该可以...
.q-rounder {
background: #222;
width: 15px;
height: 15px;
}
.quarter-circle {
width: 15px;
height: 15px;
background: red;
border-radius: 100px 0 0 0;
-moz-border-radius: 100px 0 0 0;
-webkit-border-radius: 100px 0 0 0;
}
<div class="q-rounder">
<div class="quarter-circle"></div>
</div>
(fiddle)
答案 0 :(得分:4)
使用径向渐变作为背景
.q-rounder {
background:
radial-gradient(farthest-side at bottom right,transparent 94%, #222);
width: 15px;
height: 15px;
}
<div class="q-rounder">
</div>
带有at
的另一种语法可以更好地支持(safari doesn't support the at
)
.q-rounder {
background:
radial-gradient(farthest-side,transparent 94%, #222) top left/200% 200%;
width: 15px;
height: 15px;
}
<div class="q-rounder">
</div>
答案 1 :(得分:1)
如果您可以使用纯色背景色,也许这适合您?
基本上,before元素位于矩形的后面,该矩形的边框半径为纯色。
每个浏览器和版本均受支持。
.q-rounder {
position: relative;
background: white;
width: 15px;
height: 15px;
border-radius: 100px 0 0 0;
}
.q-rounder:before {
position: absolute;
left: 0;
top: 0;
width: 15px;
height: 15px;
background: black;
content: "";
z-index: -1;
}
<div class="q-rounder">
</div>