圣杯布局简单解释

上面两张图就是同一个布局在不同浏览器窗口下打开的效果,可以看见中间宽度随着浏览器宽度变化,左右两边是固定的,但是没有高度相等的效果。

下面是代码:

  

<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style>
*{margin:0;padding:0}
body{min-width: 700px;color:#fff}
.header,.footer{background:#333;text-align: center;border:1px solid red;width:100%;clear:both;}
.content{padding:0 250px 0 200px;}
.middle,.left,.right{position:relative;float:left}
.middle{width:100%;background: #FF8286}
.left{margin-left:-100%;left:-200px;width:200px;background:blue}
.right{margin-left:-250px;right:-250px;background:green;width:250px;}
</style>
</head>
<body>
<div class="header">
header
</div>
<div class="content">
<div class="middle">
<p>0000000000000000000000000</p>
<p>0000000000000000000000000</p>
<p>0000000000000000000000000</p>
<p>0000000000000000000000000</p>
</div>
<div class="left">
<p>1111111111111111111111</p>
<p>1111111111111111111111</p>
<p>1111111111111111111111</p>
<p>1111111111111111111111</p>
</div>
<div class="right">
<p>2222222222222222222</p>
<p>2222222222222222222</p>
<p>2222222222222222222</p>
<p>2222222222222222222</p>
<p>2222222222222222222</p>
<p>2222222222222222222</p>
<p>2222222222222222222</p>
<p>2222222222222222222</p>
<p>2222222222222222222</p>
</div>
</div>
<div class="footer">
fotter
</div>
</body>
</html>

将left middle  right  放在一个DIV中,然后 middle放在最前面,这是最重要的,然后对于left与right 通过margin-left:100%;然后在通过定位,将他们的位置变换回来,而后就会出现这个效果.

通过一切你们会发现对于middle left right 是需要定位position:relative;float:eft;

时间: 2024-08-28 05:38:12

圣杯布局简单解释的相关文章

双飞翼布局和圣杯布局解析

今天突然想起了温习一下css布局.之前看双飞翼布局只是粗略的看了一下,大概明白怎么做,但是并没有去延伸一下...还有它的孪生兄弟:圣杯布局.今天仔细的琢磨了一下:突然发现其实内容还不少的样子. 双飞翼布局或者说圣杯布局它们都是三列布局:(一列自适应和两列固定列).当然,除了三列布局,还有一列布局(自适应居中).两列布局(一列自适应一列固定列). 其他两种都相对来说简单些.就着重说一下三列布局. 一.双飞翼布局            先给出效果图:                 其中中间一部分是

css中的圣杯布局和双飞翼布局

圣杯布局 布局要求: 三列布局,中间自适应,两边定宽 中间栏要在浏览器优先渲染 允许任意列的高度最高 用最简单的CSS.最少的HACK语句 解释说明: 1.min-width:700px是为了当页面缩小到指定的700px的时候,页面内容宽度不再随着浏览器缩小.是为了电脑的正常浏览效果 2.注意到container设置的值0 220px  0 200px,上 右 下 左,所以left 设置widh:200px,right设置width:220px 3.设置min-height:300px,是让三列

圣杯布局和双飞翼布局的作用和区别

圣杯布局和双飞翼布局解决的问题是一样的,就是两边顶宽,中间自适应的三栏布局,中间栏要在放在文档流前面以优先渲染. 圣杯布局和双飞翼布局解决问题的方案在前一半是相同的,也就是三栏全部float浮动,但左右两栏加上负margin让其跟中间栏div并排,以形成三栏布局. 不同在于解决”中间栏div内容不被遮挡“问题的思路不一样:圣杯布局,为了中间div内容不被遮挡,将中间div设置了左右padding-left和padding-right后,将左右两个div用相对布局position: relativ

聊聊圣杯布局

经典三列布局,也叫做圣杯布局[Holy Grail of Layouts]是Kevin Cornell在2006年提出的一个布局模型概念,在国内最早是由淘宝UED的工程师传播开来,在中国也有叫法是双飞翼布局,它的布局要求有几点: 1.三列布局,中间宽度自适应,两边定宽: 2.中间栏要在浏览器中优先展示渲染: 3.允许任意列的高度最高: 4.要求只用一个额外的DIV标签: 5.要求用最简单的CSS.最少的HACK语句: 思路步骤:(按照外层div.main,左侧div.left,内容部分div.c

圣杯布局的几种情况

经典三列布局,也叫做圣杯布局[Holy Grail of Layouts]是Kevin Cornell在2006年提出的一个布局模型概念,在国内最早是由淘宝UED的工程师传播开来,在中国也有叫法是双飞翼布局,它的布局要求有几点: 1.三列布局,中间宽度自适应,两边定宽: 2.中间栏要在浏览器中优先展示渲染: 3.允许任意列的高度最高: 4.要求只用一个额外的DIV标签: 5.要求用最简单的CSS.最少的HACK语句: 以上来自博客:https://my.oschina.net/jsan/blog

static_cast 、const_cast、dynamic_cast、reinterpret_cast 关键字简单解释

static_cast .const_cast.dynamic_cast.reinterpret_cast 关键字简单解释: Static_cast 静态类型转换 ①用于类层次结构中基类(父类)和派生类(子类)之间指针或引用的转换. 进行上行转换(把派生类的指针或引用转换成基类表示)是安全的: 进行下行转换(把基类指针或引用转换成派生类表示)时,由于没有动态类型检查,所以是不安全的. ②用于基本数据类型之间的转换,如把int转换成char,把int转换成enum.这种转换的安全性也要开发人员来保

圣杯布局(定宽与自适应)

圣杯布局小结 阅读目录 1. 从2个实际的需求说起 2. 圣杯布局的传统实现方法 3. 圣杯布局传统实现方法的一种变体 4. 圣杯布局的纯浮动实现 5. 圣杯布局的flex实现 7. 结束语 圣杯布局,很久之前就听过,但是一直都没详细了解过,最近因为做了一个项目,借鉴了薪人薪事这个公司的产品页面,才第一次用到这种布局方式.于是就花了点时间,测了下它实现常见分栏布局的代码,每段代码都非常简单,但布局效果很完美,比我以前用的方式好用不少.本文是对它实现方式的一些总结,希望可以把这种技术推荐给跟我之前

认识圣杯布局和双飞翼布局

各种各样的布局,无非就是用了浮动 float,负边距,相对定位,通过这三者的巧妙组合跟拼凑来实现的.用好这些,布局就会很简单. 还没学会布局时,就听到有圣杯布局和双飞翼布局,这布局都有这么风骚的名字,就觉得很酷,事实也如此,了解了圣杯布局和双飞翼布局,才发现挺深奥的. 传统的布局中,当我们需要改变两栏的互换,就会很麻烦.因为还要涉及到 HTML 代码的修改,不能完全从 CSS 上更改,这叫 HTML 和 CSS 的耦合.而圣杯布局跟双飞翼布局就是能够不考虑主体的位置,能够只通过 CSS 代码就改

CSS中的圣杯布局,以及圣杯布局与双飞翼布局的区别

为了解决中间宽度自适应,左右列固定宽度,最早出现的是圣杯布局,双飞翼布局是对圣杯布局的改良,同样这种 布局的优势在于在中间列中的文档可以优先渲染. 1.什么是圣杯布局 其实对于圣杯布局,前面一部分与双飞翼布局完全相同 <style>   .column{ float:left } .container{ width:100% } .column{ height:300px; }   #center_panel{ width:100%;  background-color:red; } #rig