使用负半径 div 使阴影看起来正确
Make shadow looks correct with div with negaitve radius
如何使用 css 绘制具有如此负半径的 div,我的问题的要点是如何在这个圆形区域使用阴影?我尝试对 ::before,::after 元素使用一些 hack 并且它使用负半径但是当我尝试对这个元素使用阴影时它看起来不正确因为这个 div 的所有方块都开始可见.
enter image description here
.side-menu__corner {
width: 12px;
height: 12px;
background: blue;
position: relative;
overflow: hidden;
}
.side-menu__corner:before {
content: "";
display: block;
background: white;
position: absolute;
bottom: -9px;
left: -9px;
width: 20px;
height: 20px;
border-radius: 20px;
}
<div class="side-menu__corner">
</div>
您可以像这样将 drop-shadow 过滤器与 radial-gradient 一起使用:
.box {
width:200px;
height:200px;
margin:50px;
background:radial-gradient(circle at bottom left,transparent 70%,blue 71%);
filter:drop-shadow(0px 0px 11px #000);
}
<div class="box">
</div>
如何使用 css 绘制具有如此负半径的 div,我的问题的要点是如何在这个圆形区域使用阴影?我尝试对 ::before,::after 元素使用一些 hack 并且它使用负半径但是当我尝试对这个元素使用阴影时它看起来不正确因为这个 div 的所有方块都开始可见.
enter image description here
.side-menu__corner {
width: 12px;
height: 12px;
background: blue;
position: relative;
overflow: hidden;
}
.side-menu__corner:before {
content: "";
display: block;
background: white;
position: absolute;
bottom: -9px;
left: -9px;
width: 20px;
height: 20px;
border-radius: 20px;
}
<div class="side-menu__corner">
</div>
您可以像这样将 drop-shadow 过滤器与 radial-gradient 一起使用:
.box {
width:200px;
height:200px;
margin:50px;
background:radial-gradient(circle at bottom left,transparent 70%,blue 71%);
filter:drop-shadow(0px 0px 11px #000);
}
<div class="box">
</div>