一、 圣杯布局、

左右固宽,中间自适应

  • 三列布局,中间宽度自适应,两边定宽;
  • 中间部分要在浏览器中优先展示渲染;

具体步骤:
1.设置基本样式
2.圣杯布局是一种相对布局,首先设置父元素container的位置:
3.将主体部分的三个子元素都设置左浮动
4.设置main宽度为width:100%,让其单独占满一行
5.设置left和right 负的外边距
6.接下来只要把left和right分别移动到这两个留白就可以了。可以使用相对定位移动 left和right部分。

代码如下:

<!doctype html>
<html>
<head>
<meta charset="utf-8"/>
<title>圣杯布局</title> <style>
body{
margin:0;
}
.box{
margin:0 auto;
width:900px;
height:300px;
background-color:orange;
padding:0 200px;
}
.left{
width:200px;
height:300px;
background-color:red;
float:left;
margin-left:-100%;
position:relative;
left:-200px; }
.center{
width:100%;
height:300px;
background-color:pink;
float:left;
}
.right{
width:200px;
height:300px;
background-color:blue;
float:left;
margin-left:-200px;
position:relative;
right:-200px;
}
</style> </head>
<body>
<div class="box">
<div class="center"></div> <div class="left"></div> <div class="right"></div>
</div>
</body>
</html>

效果图:

二、双飞翼布局

左右固宽,中间自适应

  • 左右两个div浮动,中间的div放在上面
  • 通过margin-left调整到一行
  • 中间div添加一个子节点,设置margin调整位置

代码如下:

<!doctype html>
<html>
<head>
<meta charset="utf-8"/>
<title>双飞翼布局</title> <style>
body{
margin:0;
}
.box{
margin:0 auto;
width:900px;
height:300px;
background-color:orange;
}
.warp{
margin:0 200px;
}
.left{
width:200px;
height:300px;
background-color:red;
float:left;
margin-left:-100%;
}
.center{
width:100%;
height:300px;
background-color:pink;
float:left;
}
.right{
width:200px;
height:300px;
background-color:blue;
float:left;
margin-left:-200px;
}
</style> </head>
<body>
<div class="box"> <div class="center">
<div class="warp"></div>
</div> <div class="left"></div> <div class="right"></div> </div>
</body> </html>

效果图:

持续更新 点歌关注吧!

css 布局(圣杯、双飞翼)的更多相关文章

  1. CSS布局 -- 圣杯布局 & 双飞翼布局

    按照我的理解,其实圣杯布局跟双飞翼布局的实现,目的都是左右两栏固定宽度,中间部分自适应. 但在这里实现起来还是有一些区别的 [圣杯布局] 在这里,实现了左(200px) 右(220px) 宽度固定,中 ...

  2. CSS布局-圣杯布局

    圣杯布局 圣杯布局很完美(兼容所有浏览器,包括IE6),但是使用了相对定位,布局有局限性,宽度控制要改的地方也多. 第一种方法公用部分: .lgyz, .lzrg, .lrzcg, .lcgrz, . ...

  3. CSS布局 — 圣杯布局与双飞翼布局

    圣杯布局 实现原理 html代码中,middle部分首先要放在container的最前部分,然后是left,right 将三者都设置 float:left, position:relative (因为 ...

  4. CSS布局经典—圣杯布局与双飞翼布局

    在我之前的博客网页整体布局完全剖析-剖完你不进来看一下么?中总结单列.两列.三列固宽与变宽布局,我还以为已经囊括了所有经典的网页布局方法了呢,当然除了CSS3的弹性盒模型没有涉及到,现在看来确实是自己 ...

  5. CSS经典布局-圣杯布局、双飞翼布局

    圣杯布局的来历是2006年发在a list part上的这篇文章:In Search of the Holy Grail · An A List Apart Article圣杯是西方表达“渴求之物&q ...

  6. css布局笔记(三)圣杯布局,双飞翼布局

    圣杯布局和双飞翼布局都是三列布局,两边定宽,中间自适应布局,中间栏要在放在文档流前面以优先渲染. 圣杯布局如下 <!-- 圣杯布局 --> <!DOCTYPE html> &l ...

  7. CSS | 圣杯布局、双飞翼布局 | 自适应三栏布局

    圣杯布局和双飞翼布局是前端工程师需要日常掌握的重要布局方式.两者的功能相同,都是为了实现一个两侧宽度固定,中间宽度自适应的三栏布局 虽然两者的实现方法略有差异,不过都遵循了以下要点: 1.两侧宽度固定 ...

  8. CSS 之 圣杯布局&双飞翼布局

    圣杯布局 和 双飞翼布局 是重要布局方式.两者的功能相同,都是为了实现一个两侧宽度固定,中间宽度自适应的三栏布局. 遵循了以下要点: 两侧宽度固定,中间宽度自适应 中间部分在DOM结构上优先,以便先行 ...

  9. css两栏布局、圣杯布局、双飞翼布局

    最近几个月一直用vue在写手机端的项目,主要写业务逻辑,在js方面投入的时间和精力也比较多.这两天写页面明显感觉css布局方面的知识有不足,所以复习一下布局方法. 两栏布局 1.浮动 .box1 .l ...

  10. CSS布局之圣杯布局和双飞翼布局

    其实圣杯布局和双飞翼布局实现的都是三栏布局,两边的盒子宽度固定,中间盒子自适应,也就是我们常说的固比固布局.它们实现的效果都是一样的,差别在于其实现的思想. 一.圣杯布局 html代码中,将重要的内容 ...

随机推荐

  1. hashmap:cr:csdn

    HashMap相关问题 1.你用过HashMap吗?什么是HashMap?你为什么用到它? 用过,HashMap是基于哈希表的Map接口的非同步实现,它允许null键和null值,且HashMap依托 ...

  2. [CSP-S模拟测试]:联(小清新线段树)

    题目描述 由于出题人懒所以没有背景.一个无限长的$01$序列,初始全为$0$,每次选择一个区间$[l,r]$进行操作,有三种操作:$\bullet 1\ l\ r$将$[l,r]$中所有元素变成$1$ ...

  3. 几乎相同的 deal.jsp 代码(index.jsp不变),在IDEA相同项目运行,结果却不一样,实在想不出来

    目录 主要问题 主要项目 index.jsp: deal.jsp(正确可运行): deal.jsp(错误不可运行): 错误的代码运行图片: 可运行的代码运行图片 主要问题 几乎相同的 deal.jsp ...

  4. git add 添加错文件的撤销方法

    git add 添加 多余文件 这样的错误是由于,有的时候 可能 git add . (空格+ 点) 表示当前目录所有文件,不小心就会提交其他文件 git add 如果添加了错误的文件的话 撤销操作 ...

  5. ubuntu 使用pecl 安装 PHP AMQP Extension

    下载扩展: sudo apt-get -y install gcc make autoconf libc-dev pkg-config sudo apt-get -y install libssl-d ...

  6. asp.net dev xtraReporting(一)静态页面

    新建一个空web应用程序 添加一个default.aspx 添加新建项 建一个空report 写点数据 defalut.aspx中拖拽一个aspxDocumentView 预览可以实现展示了

  7. [伯努利数] poj 1707 Sum of powers

    题目链接: http://poj.org/problem?id=1707 Language: Default Sum of powers Time Limit: 1000MS   Memory Lim ...

  8. Dagger2 探索记2——四大基本组件(二)

    书接上文,先回顾以下前一章写的内容. 内容大概就是在Activity中用@Inject标记一个注入的类,然后在这个类的构造函数上也打个@Inject标记,然后使用@Component来连接两边,完成对 ...

  9. Codeforces 1185G2 Playlist for Polycarp (hard version) 背包,暴力

    题意及思路:https://www.cnblogs.com/Als123/p/11061147.html 代码: #include <bits/stdc++.h> #define LL l ...

  10. flask开发问题小记

    前因 最近在使用flask开发一个APP的后端时出现了一些小问题.我使用sqlalchemy建立了如下多对多关系: 中间表 user_manager_group = db.Table('manage_ ...