两列高度自适应(转)

相信很多人都非常喜欢用div+css布局,无论你是前端开发者,还是后台程序员,因为它的好处实在太多,可以用很少的代码来控制布局,然后用CSS表现其形态,表现和样式分离。而且在SEO方面,它还能提供30%的优化,我们何乐而不为呢。

很多人都会碰到如题的布局问题,解决方案很多,可以用背景图来填充,或用js来控制,但终不是最佳方案,最好还是从DIV,CSS本身来考虑:

以下为三行两列的的经典模式,还可以演变成多种布局,有待大家修改:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>两列高度自适应</title>
<style type="text/css">
<!--
*{margin:0;padding:0;}
#top{background:#dcdcdc;height:30px;}
#main{overflow:hidden;}
.sidebar{float:left;width:150px;background:#ff0000;}
.content{background:#333333;overflow:hidden;_float:left;/*兼容IE6*/}
.row{margin-bottom:-10000px;padding-bottom:10000px;/*内外补丁是关键*/}
#footer{clear:both;height:30px;background:#0000ff;}
-->
</style>
</head>
<body>
<div id="container">

<div id="top"></div>

<div id="main">

<div class="sidebar row">
我在左边<br />
我在左边<br />
我在左边<br />
我在左边<br />
我在左边<br />
我在左边<br />
我在左边<br />
我在左边<br />
我在左边<br />
我在左边<br />
我在左边<br />
我在左边<br />
我在左边<br />
我在左边<br />
我在左边<br />
我在左边<br />
我在左边<br />

</div>

<div class="content row">
我在正文<br />
我在正文<br />
我在正文<br />
我在正文<br />
我在正文<br />
我在正文<br />
我在正文<br />
我在正文<br />
我在正文<br />
我在正文<br />
我在正文<br />
我在正文<br />
我在正文<br />
我在正文<br />
我在正文<br />
我在正文<br />
我在正文<br />
我在正文<br />
我在正文<br />
我在正文<br />
我在正文<br />
我在正文<br />
我在正文<br />
我在正文<br />

<span style="float:right; font-size:0; position:relative; ">&nbsp;</span> <!--为了万恶的ie6-->

</div>

</div>

<div id="footer"></div>

</div>
</body>
</html>

配上效果图:

本方案在IE6,IE7,IE8,FF下均测试通过,虽然简单,但是用处广泛,希望对广大web标准爱好者有所帮助

时间: 2024-10-28 11:56:04

两列高度自适应(转)的相关文章

两列右侧自适应布局

<div class="g-bd1 f-cb"> <div class="g-sd1"> <p>左侧定宽</p> </div> <div class="g-mn1"> <div class="g-mn1c"> <p>右侧自适应</p> </div> </div> </div> /* 两

两列左侧自适应布局

<div class="g-bd2 f-cb"> <div class="g-mn2"> <div class="g-mn2c"> <p>左侧自适应</p> </div> </div> <div class="g-sd2"> <p>右侧定宽</p> </div> </div> /* 两

使div高度自适应,两列高度一样

<style type="text/css">#wrap{ height:100%; overflow:hidden}#div1{ background:red; width:200px;}#div2{ background:green; width:200px}#div1,#div2{padding-bottom: 32767px;margin-bottom: -32767px; float:left }</style> <body><div

CSS两列自适应布局

两列布局,一边固定,一边自适应,很常见,可不见得都能写好,就像我. 在一通搜索后,总结了几种方法. 1.CSS3 Flex-Box 其实我最早知道的是这种方法,之前也记录过. 弹性方框模型 (Flexible Box Model)笔记 2.来自div+css自适应两列布局,一列定宽,一列自适应 代码: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Doc

左侧定宽,右侧自适应,两列布局且等高

.container{ overflow: hidden; } .con-left{ float: left; width: 200px; background-color: red; background:#d3daf8 ; position: relative; /*margin-bottom: -99999px; padding-bottom: 99999px;*/ /*这是两列高度对齐代码*/ } .con-right{ margin-left: 200px; position: rel

css布局之两列布局

我们见过两列布局的网站也很多,不过这种两列布局的分为两种:自适应和固定宽度 1.自适应两列布局 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>两列之自适应布局</title> </head> <style> .left{ float: left; width: 20%; heig

JQuery 实现两列等高并自适应高度

想要使用 JQuery 实现两列等高并自适应高度,其实也很简单,原理就是取得左右两边的高度,然后判断这个值,把大的值赋给小的就行了.看代码: $(document).ready(function() { var _leftheight = jQuery(".left").height(); var _rightheight = jQuery(".right").height(); if (_leftheight > _rightheight) { jQuery

两列布局中单列定宽单列自适应布局的5种思路

× 目录 [1]float [2]inline-block [3]table[4]absolute[5]flex 前面的话 说起自适应布局方式,单列定宽单列自适应布局是最基本的布局形式.本文将从float.inline-block.table.absolute和flex这五种思路来详细说明如何巧妙地实现布局 思路一: float 说起两列布局,最常见的就是使用float来实现.float浮动布局的缺点是浮动后会造成文本环绕等效果,以及需要及时清除浮动.如果各浮动元素的高度不同时,可能会出犬牙交错

任意列+左右两列等高布局,并要求有最小高度

高度相等列在Web页面设计中永远是一个网页设计师的需求.如果所有列都有相同的背景色,高度相等还是不相等都无关紧要,因为你只要在这些列的父元素中设置一个背景色就可以了.但是,如果一个或多个列需要单独设置自己的背景色,那么它的视觉完整性的设计就显得非常重要了.大家都知道当初Table实现等高列布局是多么的简单,但是我们使用CSS来创建等高列布局并非是那么容易的事情. 如果一个设计是固定宽度(非流体的宽度设计),那么实现多列等高效果是相当的容易.最好的技术就是使用Dan Cederholm的Faux