首页客户案例企业网站建设外贸独立站SEO优化小程序+APP开发自媒体运营关于动态联系咨询

box-shadow被overflow:hidden截断的解决方法

CSS3中的box-shadow这个属性可以给盒子加上投影效果,在默认情况下outset的。也就是说边框在盒子外面,并且不占用盒子的布局空间。那么这就产生了问题,如果盒子紧挨着容器,而容器设置有overflow:hidden属性不就会把投影效果截断了吗? 对,容器会截断投影效果! <style> body {font:14px/32px 微软雅黑;} div {overflow:hidden;float:left;} span {box-shadow:0px 0px 5px #CCC;display:inline-block;} </style> <div> <span>诶?我的投影效果哪儿去了?</span> </div>

这个情况就是span上设置的投影效果被div上的overflow:hidden切掉了,那么如何让它不切掉呢?这很容易,只要span不紧挨着div就不会被切掉了嘛,我们可以给div加个padding:5px,让span和div之间有5px的空间用来渲染投影,但是加padding的话div的宽度会增加吧?我们当然不能破坏原来的布局,因此不能让宽度增加,或者至少不能让常规流的行空间减少。于是在加了padding的同时使用负margin来消耗掉padding增加的空间。 <style> body {font:14px/32px 微软雅黑;} div {overflow:hidden;float:left;padding:5px;margin:-5px;} span {box-shadow:0px 0px 5px #CCC;display:inline-block;} </style> <div> <span>呜咕~ 投影效果出现啦~</span> </div>

这样就既解决了投影被切掉的问题,也不会影响到常规流的布局了。

日期:2015年04月16日

标签: 广州网站设计公司 、 广州网站设计 、 广州网站建设公司 、 广州网站建设 、 广州网站制作公司 、 广州网站制作 、 高端网站设计 、 高端网站建设 、 广州高端网站设计 、 广州高端网站建设

获取您的项目定制及优化报价。

* 为广州天河、白云、海珠、番禺、花都、南沙区提供网站建设服务。
微信二维码15876521776免费获取诊断报告