两边定宽,中间自适应的三栏布局,中间栏要放在文档流前面以优先渲染。其实双飞翼布局就是在圣杯布局的原理上进行完善,实现相同效果的完美布局!html
<div id="content">
<div id="main-wrap"><div id="main"></div></div>
<div id="left"></div>
<div id="right"></div>
</div>
#main,#left,#right{ height: 200px; float: left; }
#main-wrap{ margin: 0 100px; }
#main{ width: 100%; background: pink; }
#left{ background: blue; width:100px ; margin-left: -100%; position: relative; left: 100px; }
#right{ width:100px ; margin-right: -100px; background: green; }
对比圣杯布局和双飞翼布局,咱们会发现原理实际上是同样的,都是采用了浮动 float、负边距 negative margin、相对定位 relative position来对div的位置改变,双飞翼布局是在main的外层添加了一个容易,从而padding就能够不用再最外层容器content上,而是在main-wrap上用margin实现中间部分的自适应!前端
圣杯布局的原理git
DEMOgithub
个人博客,欢迎交流!web
微信小程序专栏微信小程序
前端笔记专栏微信