box-shadow失效原因

页面布局中,无论是正常的文档流,还是flex布局,都会让页面铺满盒子。而box-shadow再页面设计中是不可缺少的效果,在单独盒子中的元素,box-shadow的阴影会投影到父级上。但是当阴影盒子是紧贴着,那阴影就会变得不可见。

办法1
在需要的box-shadow的元素设置position: relative
在正常文档流中,紧贴着,意味着元素涂在父级上的阴影被旁边元素覆盖再次涂写,所以设置position: relative就让元素脱离文档流,浏览器单独处理,就出现了z轴上的堆叠,也就不存在被紧贴着,阴影就直接投影在正常文档流之上。
办法2
在父级上设置flex,然后在需要阴影的元素设置z-index大于等于0
flex会让直接子元素变为一种flex-item元素,这个时候就不能称为文档流了,flex-item就有了z轴的概念,所以设置z-index就能调整阴影出现的堆叠层次。

出处:https://juejin.cn/post/6955678201142050853

box-shadow实现四周阴影效果

// box-shadow实现四周阴影
box-shadow:0px 0px 20px #333333;

当box-shadow给出两个、三个或四个值时。

  • 如果只给出两个值,那么这两个值将会被当作 offset-x左偏移量offset-y 右偏移量来解释。
  • 如果给出了第三个值,那么第三个值将会被当作blur-radius模糊半径解释。
  • 如果给出了第四个值,那么第四个值将会被当作spread-radius扩散半径来解释。
  • 可选,inset关键字,边框外还是边框内。
  • 可选,color颜色值。
    在这里插入图片描述
    精选的几种box-shadow阴影效果:
    https://getcssscan.com/css-box-shadow-examples?ref=producthunt
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐