日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > web前端 > htmlcss > DIV+CSS:網頁一行兩列背景自適應

DIV+CSS:網頁一行兩列背景自適應

來源:程序員人生   發布時間:2013-11-17 04:53:04 閱讀次數:2729次

網頁布局中常有的一種情況就是網頁主體部分分成一行兩列;而在很多種情況下,設計師們常把左右兩列的背景色設計成不同色彩,以實現內容塊的明顯區分;但這樣的設計給布局提出了一個看似簡單,而實現非常難的問題;那就是左右兩列怎么樣實現背景高度自適應,及左邊內容高于右邊時,右邊背景色也要和左邊一樣;右邊內容高于左邊時,左邊背景色也要和右邊一樣;

當年為了實現這個,我在網上查過無數的文章,都沒有很好的解決方案;多數人用很大的負數實現,也有人用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>

演示效果:

以下為引用的內容:

<!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=utf-8" />
<title>http://www.zishu.cn</title>
<style>
*{ padding:0; margin:0; font-size:12px; line-height:1.8; font-family:Verdana;}
#box{ background:#FFCC00;width:700px; border-left:200px solid #FF9900;}
#left{margin-left:-200px; width:200px; position:static;}
* html #left{position:fixed;}
#right{float:right; width:695px;}
</style>
</head>
<body>
<div id="box">
<div id="right">right <br />
right</div>
<div id="left">left</div>
<div style="clear:both"></div>
</div>
</body>
</html>

方法一存在一個問題:就是如果左邊的背景是一張圖怎么辦?對,如果是純色,那么沒有問題;如果是一張圖,就沒有辦法了;所以我寫了第二種解決辦法;
實現方法二:用嵌套實現兩列背景;這個方法我個人推薦使用;


 程序代碼

以下為引用的內容:
<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>

演示效果:

以下為引用的內容:
<!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=utf-8" />
<title>http://www.zishu.cn</title>
<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>
</head>
<body>
<div id="box">
<div id="content">
<div id="right">right <br />right</div>
<div id="left">left</div>
</div>
</div>
</body>
</html>

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 亚洲一区二区三区影院 | 午夜国产成人 | 国产精品免费观看视频 | 亚洲免费精品 | 欧美日韩在线一区二区三区 | 日本欧美中文字幕 | 国产成人一区二区三区 | 日韩毛片在线 | 日韩免费电影 | 二区三区视频 | 亚洲精品视频一区 | 91精品久久久久久久久99绯色 | 黄色一级在线看 | 久热久热 | 国产在线欧美 | 一区在线观看 | av网站免费播放 | 亚洲第一页在线 | 九九热久久免费视频 | 国产精品久久久久7777按摩 | 亚洲欧洲精品成人久久奇米网 | 精品福利av导航 | av三级 | 理论片在线视频 | 国产精品大全 | 成人免费观看视频大全 | 欧美日韩高清在线观看 | 亚洲一区精品视频 | 国产欧美一区二区视频 | 成人午夜在线观看 | 伊人色婷婷 | 日韩毛片免费视频一级特黄 | 免费黄色大片 | www.日韩av.com| av成人在线观看 | 精品一区二区三区四区 | 亚洲精品国产视频 | 免费看的av| 国产精成人 | 欧美精品一区视频 | 国产视|