第2章 背景与边框
1 半透明边框
background-clip: border-box(default) | padding-box
2 多重边框
box-shadow
box-shadow
的好处在于,它支持逗号分隔语法,我们 可以创建任意数量的投影。
唯一需要注意的是,box-shadow
是层层叠加的,第一层投影位于最顶层,依次类推。
注意事项:
投影的行为跟边框不完全一致,因为它不会影响布局,而且也不会 受到
box-sizing
属性的影响。不过,你还是可以通过内边距或外边距(这取决于投影是内嵌和还是外扩的)来额外模拟出边框所需要 占据的空间。上述方法所创建出的假“边框”出现在元素的外圈。它们并不会响 应鼠标事件,比如悬停或点击。如果这一点非常重要,你可以给
box-shadow
属性加上inset
关键字,来使投影绘制在元素的内圈。请注意,此时你需要增加额外的内边距来腾出足够的空隙。
outline 方案
在某些情况下,你可能只需要两层边框,那就可以先设置一层常规边 框,再加上 outline(描边)属性来产生外层的边框。这种方法的一大优点在于边框样式十分灵活,不像上面的 box-shadow
方案只能模拟实线边框(假设我们需要产生虚线边框效果,box-shadow
就没辙了)。