您现在的位置是:网站首页> 编程资料编程资料
CSS3实现多重边框的方法总结CSS3 box-shadow属性实例详解CSS3阴影效果样式库box-shadows.css 53种css3 box-shadow阴影(外阴影与外发光)图示讲解详解CSS3阴影 box-shadow的使用和技巧总结 详解CSS3的box-shadow属性制作边框阴影效果的方法CSS3里box-shadow属性的使用方法示例详解
2023-10-22
271人已围观
简介 CSS3的box-shadow用来制作多重边框真的比较给力,这也是本文CSS3实现多重边框的方法总结的重点,不过在此之前我们还是先来看一下兼容性较好的传统方式:
方法1:div嵌套实现多重边框。
效果图:
html代码
- <div id="outer">
- <div id="inner">div嵌套实现多重边框div>
- div>
css代码
- #outer {
- width: 100px;
- height: 100px;
- background-color: bisque;
- border: 10px solid brown;
- position: relative;
- }
- #inner {
- width: 84px;
- height: 84px;
- border: 8px solid blue;
- }
- /*#outer,
- #inner {
- -webkit-border-radius: 5px;
- -moz-border-radius: 5px;
- border-radius: 5px;
- }*/
缺点:可能无法修改结构或修改html结构成本高;多个div都设置圆角时,边框之间不能完全贴合。圆角多边框效果图:
方法2:使用outline+outline-offset实现多重边框。
如果我们只需要绘制两层边框,使用outline也可以做到。outline是border外面的一层,和border原理一样。通过设定outline的样式可以为border外面再设定一层边框。
但是需要注意的是,outline属性设定的边框不会随着内部元素边界样式的变化而变化。也就是说,如果元素边框带了圆角,那么outline绘制出的最外层边框仍然是矩形的。这是outline绘制边框的一个缺憾。
效果图:
html代码
- <div id="outline">outlie实现多重边框div>
css代码
- #outline {
- width: 84px;
- height: 84px;
- border: 8px solid blue;
- /*-webkit-border-radius: 5px;
- -moz-border-radius: 5px;
- border-radius: 5px;*/
- outline: 10px solid brown;
- outline-offset: 0px;
- /*border和outline之间的距离*/
- margin: 20px;
- /*因为outline不影响布局,使用margin给边框腾位置*/
- }
优点:它跟边框类似,可以设置各种线型,比如虚线、实线。
缺点:outline不影响布局,需使用margin给边框腾位置。以防被其它元素覆盖。如果容器本身有圆角的话,描边并不能完全贴合圆角,效果图如下:
方法3:使用box-shadow 外投影实现多重边框。
box-shadow属性可以为盒模型设定投影。但是其实它还有设定边框的功能。
box-shadow可以传递五个参数,前两个参数表示投影的偏移量,第三个参数表示投影的模糊程度,第四个参数表示投影的扩张度,最后一个参数表示投影的颜色。然而我们平常很少用到第四个参数,在这里使用第四个参数,就可以让投影进行扩张,通过设定比较合适的值,就可以模拟出边框的效果了。
同样,box-shadow属性可以传入多个阴影的列表,用“,”分割即可。因此,只要我们定义一个阴影列表,并且递增的增加其扩张度参数的取值,就可以绘制出多重边框的效果了。
效果图:
html代码
- <div id="boxShadow">boxshadow实现多重边框(外投影)div>
css代码
- #boxShadow {
- margin: 40px;
- /*因为box-shadow不影响布局,使用margin给边框腾出位置*/
- width: 84px;
- height: 84px;
- border: 8px solid blue;
- -webkit-border-radius: 提示:
本文由神整理自网络,如有侵权请联系本站删除!
本站声明:
1、本站所有资源均来源于互联网,不保证100%完整、不提供任何技术支持;
2、本站所发布的文章以及附件仅限用于学习和研究目的;不得将用于商业或者非法用途;否则由此产生的法律后果,本站概不负责!
点击排行
本栏推荐
