几种常见css布局
单列布局

第一种
给定宽度,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;
}
未完待续...
几种常见css布局的更多相关文章
- 几种常见的CSS布局
本文概要 本文将介绍如下几种常见的布局: 其中实现三栏布局有多种方式,本文着重介绍圣杯布局和双飞翼布局.另外几种可以猛戳实现三栏布局的几种方法 一.单列布局 常见的单列布局有两种: header,co ...
- 前端开发周报: CSS 布局方式方式与JavaScript数据结构和算法
前端开发周报:CSS 布局方式与JavaScript动画库 1.常见 CSS 布局方式详见: 一些常见的 CSS 布局方式梳理,涉及 Flex 布局.Grid 布局.圣杯布局.双飞翼布局等.http: ...
- css布局两边固定中间自适应的四种方法
第一种:左右侧采用浮动 中间采用margin-left 和 margin-right 方法. 代码如下: <div style="width:100%; margin:0 auto;& ...
- CSS中常见的布局
一.css中常见的布局有哪些? (1)两列布局 (2)三列布局 (3)弹性布局 (4)圣杯布局 (5)双飞翼布局 二.具体实现 (1)两列布局 https://www.cnblogs.com/qin ...
- <转载>div+css布局教程之div+css常见布局结构定义
在使用div+css布局时,首先应该根据网页内容进行结构设计,仔细分析和规划你的页面结构,你可能得到类似这样的几块: 页面层容器.页面头部.标志和站点名称.站点导航(主菜单).主页面内容.子菜单.搜索 ...
- 四种常见的APP分类界面布局设计案例学习
相信各位对于APP设计,已经很熟练啦.如何在熟练的基础上提高我们界面的优美度,或者是进行APP界面的迭代设计. 重构APP设计布局是我们必须要经历的一个过程. 在之前,学习UI设计的时候,经常要接触到 ...
- 几种常见布局的flex写法
flex布局目前基本上兼容主流的浏览器,且实现方式简单.我整理了flex的一些知识点,并且总结归纳了几种常见布局的flex写法 flex基础知识点 flex-grow和flex-shrink相关计算 ...
- css两端对齐——div+css布局实现2端对齐的4种方法总结
div+css布局实现2端对齐是我们网页排版中经常会使用到的,这篇文章将总结一下可以实现的方法: html结构 实现demo里面的div通过Css进行2端对齐. <div class=" ...
- 界面设计技法之css布局
css布局之于页面就如同ECMAScript之于JS一般,细想一番,html就如同语文,css就如同数学,js呢,就是物理,有些扯远,这里就先不展开了. 回到主题,从最开始的css到如今的sass(l ...
随机推荐
- CF-1291 D - Irreducible Anagrams
D. Irreducible Anagrams 题意 若两个字符串中每个字符的个数都是一样的,则称他们互为\(anagrams\).现在定义两个字符串s,t是\(reducible~anagram\) ...
- 2020第十一届蓝桥杯第二场省赛C++A组【A-H】
A. 门牌制作 答案 624 代码 #include <bits/stdc++.h> using namespace std; int main() { ios::sync_with_st ...
- HDU6532 Chessboard (最大费用流)
题意:棋盘上有n个棋子 每个棋子都有收益 现在给定1e5条线 有横着的 竖着的 规定只能在线的一侧选最多ki个棋子 问最大收益 题解:写自闭的一道题 很容易想到是网络流 但是建图有点难 第一道最大费用 ...
- 【hdu 4859】海岸线(图论--网络流最小割)
题意:有一个区域,有'.'的陆地,'D'的深海域,'E'的浅海域.其中浅海域可以填充为陆地.这里的陆地区域不联通,并且整个地图都处在海洋之中.问填充一定浅海域之后所有岛屿的最长的海岸线之和. 解法:最 ...
- Traveling Salesman among Aerial Cities 旅行商(TSP)问题
题目链接:点我 问题: 给你n个点的坐标(x,y,z).从点(a,b,c) 到另一个点 (p,q,r) 的距离是:|p−a|+|q−b|+max(0,r−c) 问你从一个点为起点,找一条能经过其他所有 ...
- c#中几种常见的数据结构
数组(Array): 1.数组存储在连续的内存上 2.数组的元素类型必须相同 3.数组可以直接通过下标访问 4.查找与修改元素的速度非常快 5.必须在声明时指定长度 动态数组(ArrayLis ...
- 深入了解typeof与instanceof的使用场景及注意事项
JavaScript中的数据类型分为两类,undefined,number,boolean,string,symbol,bigint,null[1]组成的基础类型和Object.Function.Ar ...
- Shell 编程练习
将后缀名为 .txt 的文件改成 .log [root@k8s-master test]# touch localhost_2020-01-{02..26}.txt [root@k8s-master ...
- 僵尸进程 & 孤儿进程
参考博文 基本概念 僵尸进程:是所有进程都会进入的一种进程状态,子进程退出,而父进程并没有调用 wait() 或 waitpid() 获取子进程的状态信息,那么子进程的 PID 和 进程描述符 等资源 ...
- 爬虫——urllib.request包
一.引用包 import urllib.request 二.常用方法 (1)urllib.request.urlretrieve(网址,本地文件存储地址):直接下载网页到本地 urllib.reque ...