背景

随着前端技术的发展推进,web端的布局方式已基本成熟,那么在网站布局方式中,三列布局最为常用,布局方式也有很多,渐渐的开发者们开始从效率的角度优化自己的代码
“如果三排布局能将中间的模块放在dom树前面,那么浏览器在做重绘的时候不久有限显示了吗?”
机制的开发者们开始围绕者这个方向进行了dom的优化,于是诞生了两种著名的布局方式,圣杯布局双飞翼布局

直奔主题

两种布局的背景就不讲了,直接上代码

圣杯布局

【JsFiddle】
https://jsfiddle.net/zwwill/px57xzp4/

<div class="container"><div class="header">header</div><div class="wrapper clearfix"><div class="main col">main</div><div class="left col">left</div><div class="right col">right</div></div><div class="footer">footer</div>
</div>
.container {width: 500px; margin: 50px auto;}
.wrapper {padding: 0 100px 0 100px;}
.col {position: relative; float: left;}
.header,.footer {height: 50px;}
.main {width: 100%;height: 200px;}
.left {width: 100px; height: 200px; margin-left: -100%;left: -100px;}
.right {width: 100px; height: 200px; margin-left: -100px; right: -100px;}
.clearfix::after {content: ""; display: block; clear: both; visibility: hidden; height: 0; overflow: hidden;}

双飞翼布局

ps:
“这不是一样的图嘛?”
“对!就是一样的,因为是解决同一种问题的嘛。”

【JsFiddle】
https://jsfiddle.net/zwwill/5xjyeu9d/

<div class="container"><div class="header">header</div><div class="wrapper clearfix"><div class="main col"><div class="main-wrap">main</div></div><div class="left col">left</div><div class="right col">right</div></div><div class="footer">footer</div>
</div>
.col {float: left;}
.header {height: 50px;}
.main {width: 100%;}
.main-wrap {margin: 0 100px 0 100px;height: 200px;}
.left {width: 100px; height: 200px; margin-left: -100%;}
.right {width: 100px; height: 200px; margin-left: -100px;}
.footer {height: 50px;}
.clearfix::after {content: ""; display: block; clear: both; visibility: hidden; height: 0; overflow: hidden;}

差别

通俗点讲就是

圣杯布局像是,杯子(wrapper)挂上两只“耳朵”(left,right),所有容量都给了杯身(main),耳朵只能挂在两侧。
双飞翼布局像是,鸟(wrapper)的双翼(left,right),身子(main)是鸟的一大部分,双翼也是身体的一部分。

虽然比较抽象,但有助于对两种布局的区分。实在看不懂就就代码吧,本人“扯”的功力不太够。

其他布局

其他布局方案已经整理到此文中,欢迎大家前往指正

【整理】CSS布局方案

【布局】圣杯布局双飞翼布局相关推荐

  1. 浅谈面试中常考的两种经典布局——圣杯与双飞翼

    圣杯和双飞翼布局介绍 最近正好碰到了写这种布局,一直没有总结过正好借这次机会总结一波,同时加强一下自己的理解. 博客链接:http://www.xluos.com/index.ph... 圣杯布局和双 ...

  2. 浅谈面试中常考的两种经典布局——圣杯与双飞翼 1

    2019独角兽企业重金招聘Python工程师标准>>> 圣杯和双飞翼布局介绍 最近正好碰到了写这种布局,一直没有总结过正好借这次机会总结一波,同时加强一下自己的理解. 圣杯布局和双飞 ...

  3. 【CSS】圣杯、双飞翼布局

    [CSS]圣杯.双飞翼布局 文章目录 [CSS]圣杯.双飞翼布局 圣杯布局 基本布局样式 接下来要把主区域移动到中间 把右区域放在主区域的右边 移动左右区域,防止两边挡住中间 完整代码 双飞翼布局 基 ...

  4. 双飞翼 html 布局,css实现双飞翼布局的四种方法(附代码)

    本篇文章给大家带来的内容是关于css实现双飞翼布局的四种方法(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 圣杯布局.双飞翼布局效果图 从效果图来看圣杯布局.双飞翼布局效果 ...

  5. 双飞翼布局内容不换行_web前端入门到实战:圣杯布局和双飞翼布局

    稍微了解前端的人都知道,圣杯布局和双飞翼布局是前端面试时必问的问题,因为它既能体现你懂HTML结构又能体现出你对DIV+CSS布局的掌握,毕竟我们学习CSS主要就是为了更好地布局带来最好的用户体验嘛~ ...

  6. CSS布局(等宽、圣杯、双飞翼、底部固定)

    1. 全背景等宽内容居中布局 即将元素左右padding设置为父元素宽度的50%减去等宽内容的一半,不需要设置width. 要点:使用**calc()** <!DOCTYPE html> ...

  7. 手把手教你理解圣杯布局和双飞翼布局

    圣杯布局和双飞翼布局都是三栏布局的典型布局. 1.为了保证页面渲染快,在写结构的时候,需要把中间盒子放在左右盒子的前面,中间一栏最先加载,渲染出来(主要内容). 2.两侧内容宽度固定,中间自适应,盒子 ...

  8. 【经典布局】圣杯布局和双飞翼布局

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.两种布局的对比 二.使用步骤 1. 圣杯布局 2. 双飞翼布局 总结 前言 圣杯布局和双飞翼布局解决的问题是一样的 ...

  9. 双飞翼HTML圣杯布局,Web前端:CSS中的圣杯布局与双飞翼布局

    层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言.CSS不仅可以静态 ...

  10. 圣杯布局、双飞翼布局的理解及对比

    一.圣杯布局 1.圣杯布局的DOM结构如下: 圣杯特点简单记为:有头.有尾.包三列,圣杯布局中间是有container大容器包裹着左中右区域的. <!--特点:有头.有尾.包三列(有个conta ...

最新文章

  1. “全宇宙首个”用中文编写的操作系统!作者还自创了甲、乙、丙编程语言?...
  2. Paper:《NÜWA: Visual Synthesis Pre-training for Neural visUal World creAtion,女娲:用于神经视觉世界创造的视觉》翻译与解读
  3. JUC原子类-数组类型(三)
  4. 跟踪源码运行流程---SpringMVC学习笔记(四)
  5. BZOJ 1016--[JSOI2008]最小生成树计数(kruskal搜索)
  6. 手撕Vue-Router
  7. 多维尺度分析(Multidimensional scaling,MDS)及SPSS实现
  8. php判断字符串长度 strlen()与mb_strlen()函数
  9. 大白菜装机教程win10_win10安装教程
  10. 洛谷P2619 [国家集训队]Tree I 题解
  11. Microk8s单机安装
  12. 一年讲50本书,年收入过亿,罗振宇没做到的,樊登读书会凭什么?
  13. Python界面编程第二课:Pyside2 创建窗口 (Python GUI)
  14. Eclipse部署多个Web项目内存溢出,java.lang.OutOfMemoryError: PermGen space
  15. 06.12 kickstart无人值守安装
  16. EXCEL中的数据分析—抽样分析
  17. 准备金率年内第九次上调
  18. windows刻录编程
  19. xp下报错“不是有效的win32应用程序”
  20. 名画19 董源《画选三幅》

热门文章

  1. C#编写的多生产者多消费者同步问题
  2. 访问级别约束0906
  3. sdut 2401 最大矩形面积
  4. Linux ssh/scp/docker学习
  5. NDK JNI Android Studio开发与调试DEMO(三)(生成 .so 文件)
  6. Linux Find 命令精通指南
  7. C#调用控制面板选项
  8. String.Format()方法
  9. 巧用CSS的RevealTrans滤镜
  10. WMI技术介绍和应用——查询系统信息和补丁包信息