稍微懂一点前端的都知道,圣杯布局和双飞翼布局是前端面试必问的问题,因为它不仅可以体现了你对HTML结构的理解也体现了你对DIV+CSS布局的掌握,毕竟我们学习CSS主要是为了更好的布局,带来最好的用户体验~其实圣杯布局其实是一回事如双飞翼布局。它们都实现了三列布局,两边盒子的宽度是固定的,中间的盒子是自适应的,也就是我们常说的solid-to-solid布局。它们实现的效果是一样的,区别在于实现的思路。HolyGrail布局源于一篇文章InSearchoftheHolyGrailonalistpart。与双飞翼版式相比,其起源并非来自页面的形象表达。在西方,圣杯的意思是“那些被渴望的人”。双飞翼布局来源于淘宝的UED,可以说是受到了页面渲染的启发。我们来看看这两种布局的区别:1.双飞翼布局可以看到,我们在main里面又增加了一个content层。了解盒模型的就知道我们不能直接给main加上margin属性,因为我们设置了width:100%,如果再设置margin会超出窗口的宽度,所以我们创建另一个content层,用来显示所有main-content的内容,放在main-content中,并为main-content设置margin。因为不改变父元素,所以只需要为main-content设置margin:0200px0200px;该属性足以实现效果。通过缩放页面,可以发现随着页面宽度的变化,三列布局先渲染在中间的盒子里,两边的盒子边框是固定的,即使页面宽度变小,也不会影响我们的浏览。有一点了解的,再来看看圣杯布局的实现:2.双飞翼布局第一步:给出HTML结构:页眉内容区
中间弹性区域
左栏
