4、边框内圆角

只使用一个元素的情况下实现内边框圆角的效果,如下图。



利用边框的扩展属性和外边距不贴合圆角的特性,可以实现。

outline: 15px solid saddlebrown;
border-radius: 20px;
box-shadow: 0 0 0 15px saddlebrown;

当阴影扩展的颜色与描边的颜色不同时,可以看出这个效果的差别。

outline: 15px solid saddlebrown;
border-radius: 20px;
box-shadow: 0 0 0 15px red;

所以,使用这一技巧是有一定限制的:

  1. 阴影扩张的搬家必须小于描边的宽度,否则描边无法将阴影完全遮住。
  2. 扩张半径还需要大于(√2-1)*r,r为圆角的大小,可以直接使用圆角的一半,因为√2-1<0.5。否则扩张半径和描边之间就会出现空白。
  3. 这个技巧利用了描边不贴合圆角的特性,但是在未来CSS的规范可能会改变,使得描边会贴合圆角。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1、属性选择器:id选择器 # 通过id 来选择类名选择器 . 通过类名来选择属性选择器 ...
    Yuann阅读 5,561评论 0 7
  • 最近在阅读CSS Secrets这本书,发现作者讲解了很多容易被忽略的CSS小技巧,感受到作者在写代码的过程中,不...
    hershin阅读 3,325评论 0 0
  • 1.多重边框 我们可以通过使用border-image来写一个多重边框,或使用多个元素来模拟多重边框,不过我们有更...
    FlyingWWS阅读 7,003评论 2 5
  • 所有图都在body背景设置为green下的截图,请不要把最外层的绿色当成边框 半透明边框 如果我们想给一个容器设置...
    hcxowe阅读 9,469评论 0 6
  • 大家好,第17次语音60秒。 不管你有没有意识到,其实每个人都是产品经理,至少都是自己的产品经理。 今天讲一下产品...
    bluealon阅读 4,039评论 1 6