在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
本文介绍了详解左右宽度固定中间自适应html布局解决方案,分享给大家,具体如下: a.使用浮动布局 html结构如下 <div class="box"> <div class="left">left</div> <div class="right">right</div> <div class="center">center</div> </div> //此处注意要先渲染左、右浮动的元素才到中间的元素。元素浮动后剩余兄弟块级元素会占满父元素的宽度 <style> .box{ height:200px; } .left{ float:left; width:300px; } .right{ float:right; width:300px; } </style> b.使用固定定位 html结构如下 <div class="box"> <div class="left">left</div> <div class="right">right</div> <div class="center">center</div> </div> //和浮动布局同理,先渲染左右元素,使其定位在父元素的左右两端,剩余的中间元素占满父元素剩余宽度。 <style> .box{ position: relative; } .left{ position: absolute; width: 100px; left: 0; } .right{ width:100px; position: absolute; right: 0; } .center{ margin: 0 100px; background: red; } </style> c.表格布局 将父元素display:table,子元素display:table-cell,会将它变为行内块。 这种布局方式的优点是兼容性好。 <div class="box"> <div class="left"> left </div> <div class="center"> center </div> <div class="right"> right </div> </div> <style> .box{ display: table; width: 100%; } .left{ display: table-cell; width: 100px; left: 0; } .right{ width:100px; display: table-cell; } .center{ width: 100%; background: red; } </style> d.弹性布局 父元素display:flex子元素会全部并列在一排。 子元素中flex:n的宽度会将父元素的宽度/n 如flex:1,宽度就等于父元素高度。 弹性布局的缺点是兼容性不高,目前IE浏览器无法使用弹性布局 <div class="box"> <div class="left"> left </div> <div class="center"> center </div> <div class="right"> right </div> </div> <style> .box{ display: flex; width: 100%; } .left{ width: 100px; left: 0; } .right{ width:100px; } .center{ flex:1; } </style> e.网格布局 父元素display:grid; grid-templatecolumns:100px auto 100px; 依次为第一个子元素宽100px 第二个自适应 第三个100px; 网格布局的优点是极为简便,直接通过父元素样式决定,缺点是兼容性不高。 <div class="box"> <div class="left"> left </div> <div class="center"> center </div> <div class="right"> right </div> </div> <style> .box{ display: grid; grid-template-columns: 100px auto 100px; width: 100%; } </style> 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持极客世界。 |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论