DIV CSS:网页一行两列背景自适应
互联网 发布时间:2008-10-17 19:24:49 作者:佚名
我要评论
网页布局中常有的一种情况就是网页主体部分分成一行两列;而在很多种情况下,设计师们常把左右两列的背景色设计成不同色彩,以实现内容块的明显区分;但这样的设计给布局提出了一个看似简单,而实现非常难的问题;那就是左右两列怎么样实现背景高度自适应,及左边内容高于右
网页布局中常有的一种情况就是网页主体部分分成一行两列;而在很多种情况下,设计师们常把左右两列的背景色设计成不同色彩,以实现内容块的明显区分;但这样的设计给布局提出了一个看似简单,而实现非常难的问题;那就是左右两列怎么样实现背景高度自适应,及左边内容高于右边时,右边背景色也要和左边一样;右边内容高于左边时,左边背景色也要和右边一样;
当年为了实现这个,我在网上查过无数的文章,都没有很好的解决方案;多数人用很大的负数实现,也有人用javascript实现; 后来因为感觉这样实现不合理,所以我一直用表格来实现; 因为这样最简单; 但今天同事问起我这个问题,我中午仔细想了想;想出了一个解决办法,写出来和大家分享;
基本原则:
1、布局要合理,不能为了实现这样的效果而使html的代码变得臃肿;
2、CSS部分也要简单巧妙实现,不能为了这样的效果而写大量的代码;而主要的还是浏览器兼容方面要没有问题;
以下是我实现的代码,说明一下,这样的布局还不是很理想;但这已是我暂时能想到的最好解决办法了;
实现方法一:左边用边框,右边用背景色;
这个方法是左边用200PX的边框来实现一列的背景,再用这个标签的实际背景色来实现另一列的背景,这样左右永远都是一样高的;
程序代码
<div id="box">
<div id="right">right <br /> right</div>
<div id="left">left</div>
<div style="clear:both"></div>
</div>
程序代码
<style>
/*这一行可能不用看,是废话,为了好看一点*/
*{ padding:0; margin:0; font-size:12px; line-height:1.8; font-family:Verdana;}
/*最外边的一个盒子,左边框200PX,有背景色*/
#box{ background:#FFCC00;width:700px; border-left:200px solid #FF9900;}
/*让左边的一列向左移动200PX*/
#left{margin-left:-200px; width:200px; position:static;}
/*由于IE和FIREFOX有区别,所以对IE加了一行作处理*/
* html #left{position:fixed;}
/*右边的宽度,这里我为什么没有写700PX;说实话,我实在没有想明白;这里最多只能写900-200-2=698PX;但这在使用过程中,并不会有影响;*/
#right{float:right; width:695px;}
</style>
演示效果:
[Ctrl A 全部选择 提示:你可先修改部分代码,再按运行]
方法一存在一个问题:就是如果左边的背景是一张图怎么办?对,如果是纯色,那么没有问题;如果是一张图,就没有办法了;所以我写了第二种解决办法;
实现方法二:用嵌套实现两列背景;这个方法我个人推荐使用;
程序代码
<div id="box">
<div id="content">
<div id="right">right <br />right</div>
<div id="left">left</div>
</div>
</div>
CSS部分我不用解释了吧!
程序代码
<style>
*{ padding:0; margin:0; font-size:12px; line-height:1.8; font-family:Verdana;}
#box{ background:#FFFF66;width:700px; padding-left:200px; float:left;}
#content{ background: #FF6600; float:left;}
#right{ width:695px; float:right;}
#left{ width:200px; margin-left:-200px; position:static; float:left;}
* html #left{position:fixed;}
</style>
演示效果:
[Ctrl A 全部选择 提示:你可先修改部分代码,再按运行]
相关文章
本文介绍了div 图片如何在DIV内水平居中,无论文字居中、图片居中等内容居中我们都可以使用以上两种方法实现,一般推荐使用CSS进行,但网页多时候,我们只需要修改CSS文件2021-11-30
DIV半透明实现,使用CSS实现DIV成半透明效果,CSS实现层与背景半透明效果。本文通过实例代码给大家介绍的非常详细,需要的朋友参考下吧2021-11-30
新手在使用web标准(div css)开发网页的时候,遇到第一个问题是div与span有什么区别,什么时候用div,什么时候用span标签。下面小编就通过本文给大家讲解下,感兴趣的朋友2021-11-30
这篇文章主要介绍了设置div背景透明的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习2021-02-20
这篇文章主要介绍了CSS实现div不设高度完全居中,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习2021-02-04
这篇文章主要介绍了div自适应高度自动填充剩余高度,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学2020-07-08- 这篇文章主要介绍了DIV+CSS的命名规矩才能有利于SEO优化的实现方法,需要的朋友可以参考下2018-11-15
- 这篇文章主要介绍了DIV或者DIV里面的图片水平与垂直居中的方法,需要的朋友可以参考下2018-11-15
这篇文章主要介绍了详解如何用div实现自制滚动条,滚动条是浏览器中最常见的组件了。想要学习如何自制滚动条的方法,需要了解的朋友可以参考下2018-03-21- Div布局是学习的重点,这篇文章主要为大家详细介绍了div对齐与网页布局的相关学习资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2017-08-31






最新评论