css – 是否可以使用凹面边框?

这是一个简单的凸起的例子.

http://jsfiddle.net/swY5k/

#test{
    width: 200px;
    height: 200px;
    background: #888888;
    border-radius: 50px;
}

但是,我想要一个凹边界半径.

我试图使边界半径为负,但这不行.

凹/凸的例子:

解决方法

您可以使用背景中的径向梯度给出凹面边框的印象.例如,像这样:
#test {
    width: 200px;
    height: 200px;
    background: #888888;
    background:
      radial-gradient(circle 20px at -20% 50%,transparent,transparent 100px,#888888 100px),radial-gradient(circle 20px at 120% 50%,#888888 100px);
    background-size:100px 200px,100px 200px;
    background-position:0 0,100% 0;
    background-repeat:no-repeat;
}

请注意,大多数Webkit浏览器仍然需要径向渐变的前缀,如果要完全支持旧版浏览器,则可能需要实现较旧的渐变语法.

相关文章

Css3如何实现鼠标移上变长特效?(图文+视频)
css3怎么实现鼠标悬停图片时缓慢变大效果?(图文+视频)
jquery如何实现点击网页回到顶部效果?(图文+视频)
css3边框阴影效果怎么做?(图文+视频)
css怎么实现圆角边框和圆形效果?(图文+视频教程)
Css3如何实现旋转移动动画特效