单列布局

第一种

给定宽度,margin:auto 即可实现

html

<div class="header"></div>
<div class="content"></div>
<div class="footer"></div>

css

.header {
margin: 0 auto;
max-width: 960px;
height: 100px;
background-color: blue;
}
.content {
margin: 0 auto;
max-width: 960px;
height: 400px;
background-color: yellow;
}
.footer {
margin: 0 auto;
max-width: 960px;
height: 100px;
background-color: green;
}

第二种

html

<div class="header">
<div class="nav"></div>
</div>
<div class="content"></div>
<div class="footer"></div>

css

.header {
margin: 0 auto;
max-width: 960px;
height: 100px;
background-color: blue;
}
.nav {
margin: 0 auto;
max-width: 800px;
background-color: darkgray;
height: 50px;
}
.content {
margin: 0 auto;
max-width: 800px;
height: 400px;
background-color: aquamarine;
}
.footer {
margin: 0 auto;
max-width: 960px;
height: 100px;
background-color: aqua;
}

等高布局

当有内容填充一侧时,另一侧高度跟左侧保持相等

html

<div class="parent">
<div class="box1">
<p>content</p>
<p>content</p>
<p>content</p>
<p>content</p>
<p>content</p>
<p>content</p>
<p>content</p>
</div>
<div class="box2">
<p>content</p>
</div>
</div>

css

通过设定 margin-bottom 和 padding-bottom,然后让父容器溢出隐藏,就能达到等高的效果

.parent {
border: 4px solid rgb(69, 209, 228);
overflow: hidden;
}
.box1 {
float: left;
width: 100px;
background-color: rgb(230, 56, 56);
margin-bottom: -2000px;
padding-bottom: 2000px;
}
.box2 {
float: right;
width: 100px;
background-color: rgb(67, 67, 221);
margin-bottom: -2000px;
padding-bottom: 2000px;
}

实例:


三列布局(双飞翼)

左侧固定,右侧固定,中间自适应的三列布局

实现方式有很多:
1.BFC
2.定位
3.浮动
4.flex弹性

示例:

html

<div class="container">
<div class="center">
<h1>center</h1>
</div>
<div class="left">
<h1>Left</h1>
</div>
<div class="right">
<h1>Right</h1>
</div>
</div>

css

<div class="container">
<div class="center">
<h1>center</h1>
</div>
<div class="left">
<h1>Left</h1>
</div>
<div class="right">
<h1>Right</h1>
</div>
</div>

实例:


圣杯布局

同样也是两边固定宽度,中间自适应,唯一区别是 dom 结构必须是先写中间列部分,这样实现中间列可以优先加载

html

<article class="container">
<div class="center">
<h2>圣杯布局</h2>
</div>
<div class="left"></div>
<div class="right"></div>
</article>

css

.container {
padding-left: 220px;
padding-right: 220px;
}
.left {
float: left;
width: 200px;
height: 400px;
background: red;
margin-left: -100%;
position: relative;
left: -220px;
}
.center {
float: left;
width: 100%;
height: 500px;
background: yellow;
}
.right {
float: left;
width: 200px;
height: 400px;
background: blue;
margin-left: -200px;
position: relative;
right: -220px;
}

未完待续...

最新文章

  1. java中的单例模式(懒汉式+饿汉式)
  2. SpringMVC基本使用
  3. 编译OpenJDK的笔记
  4. tiledmap2
  5. ajax实现--技术细节详解
  6. 【Sort Colors】cpp
  7. 配置Pycharm3.4.1调试edX Devstack
  8. 【02】尽量以const,enum,inline替换#define
  9. Angular-UI-Router 学习笔记
  10. ThinkPHP - 登录流程
  11. glog另启动线程写文本日志
  12. Django:之传递数据给JS、Ajax和Ajax CSRF认证
  13. Git基本操作指令
  14. 使用cmd命令删除文件夹下所有文件
  15. 怎样让两个DIV在同一水平线上面显示
  16. Unity使用OpenGL绘制经纬线圈
  17. task optimization
  18. Kotlin 初体验
  19. SqlSerVer 列与逗号分隔字符串 互相转换
  20. H5 开发中常见的小问题

热门文章

  1. 基于Qt的tcp客户端和服务器实现摄像头帧数据处理(客户端部分)
  2. A - 欧拉回路
  3. 2019 沈阳网络赛 D Fish eating fruit ( 树形DP)
  4. 2019牛客暑期多校训练营(第九场)B Quadratic equation (平方剩余)
  5. java中static修改成员变量和函数和其他使用
  6. centos 7下安装配置Supervisor
  7. 使用cfssl生成自签证书
  8. spring再学习之整合JDBC
  9. 杭电多校HDU 6601 Keen On Everything But Triangle(主席树)题解
  10. 概率分析方法与推断统计(来自我写的python书)