背景与边框之“多层边框”

作者: adiu | 来源:发表于2016-06-13 13:42 被阅读157次

设计场景


  • 给元素添加多层边框
  • 给元素添加双层边框

box-shadow方案


.box {
    width: 200px;
    height: 80px;
    background-color: #fafafa;
    box-shadow: 0 0 0 10px #666;
}

说明

  • 一个正值的扩张半径 + 两个为零的偏移量 + 一个为零的模糊值 所得到的投影看起来就是一道实线;

  • 有人会说为什么不用 border 属性实现呢?如果我们要实现多边框,显然用border属性是不合适的,而 box-shadow 的优点在于:它支持逗号分隔语法,我们可以创造任意数量的投影

注意

  • 投影的行为跟边框完全不一致,它不会影响布局,也不会受到 box-sizing属性的影响,但它会受 border-radius 属性的影响
  • 投影所创建出的假边框出现在元素的外圈。它并 不会响应鼠标事件,比如 悬停点击。这一点是非常重要的,不过可以给 box-shadow 属性加上inset关键字,来把投影绘制在元素的内圈。要注意的是,此时需要增加额外的内边框来撑出我们想要的效果

outline(描边)方案


.box {
    width: 200px;
    height: 80px;
    background-color: #fafafa;
    border: 10px solid #666;
    outline: 1px solid #e5e5e5;
}

优点

  • 边框样式灵活,而 box-shadow 只能模拟出实线边框
  • 如果要实现简单的缝边效果,只要额外添加 outline-offset 属性即可

注意

  • 只用于双层边框的场景
  • 边框 border 会受 border-radius 的圆角影响,而边框 outline 则不会,依然以直角的形式显示边框

《CSS SECRETS》

相关文章

  • 背景与边框之“多层边框”

    设计场景 给元素添加多层边框 给元素添加双层边框 box-shadow方案 说明 一个正值的扩张半径 + 两个为零...

  • 背景与边框之“半透明边框”

    背景与边框的工作原理 默认情况下,背景会延伸到边框所在区域的下层 半透明边框 说明:所得到的结果是边框颜色和背景颜...

  • CSS揭秘学习笔记

    第二章 背景与边框 半透明边框background-clip属性设置为padding-box可以使背景不侵入边框,...

  • 背景与边框之“边框内圆角”

    设计场景 一个元素,只在内侧有圆角,而边框或描边的四个角在外部仍然保持直角显示 老式解决方案 结构 风格 说明:这...

  • 背景与边框

    title: 背景与边框date: 2016-10-16tags: CSS Secrets 0x00 半透明边框 ...

  • 背景与边框

    复杂的背景图案 1.网格背景 通过把两幅不同线宽、不同颜色的网格图案叠加起来形成的逼真蓝图网格 代码: ``` b...

  • 背景与边框

    1.网格背景 通过把两幅不同线宽、不同颜色的网格图案叠加起来形成的逼真蓝图网格 代码:

  • CSS揭秘笔记(2):背景与边框

    第2章:背景与边框 1.半透明边框 背景知识:RGBA/HSLA颜色-给一个容器设置白色背景和一道半透明白色边框,...

  • CSS之背景与边框

    所有图都在body背景设置为green下的截图,请不要把最外层的绿色当成边框 半透明边框 如果我们想给一个容器设置...

  • border相关用法(二)

    1.图片背景边框 2.老式信封边框 3.蚂蚁行军边框

网友评论

    本文标题:背景与边框之“多层边框”

    本文链接:https://www.haomeiwen.com/subject/yjdydttx.html