小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

兩列高度未知的情況下,css + div兩列高度自適應(yīng)

 昵稱8725474 2012-02-11

兩列高度未知的情況下,css + div兩列高度自適應(yīng)  

2011-07-30 12:04:49

高度自適應(yīng)一直是一個困擾著csser的問題 今天在這里向各位介紹一個較為簡單的解決高度自適應(yīng)的方法

我們以兩列情況的布局為例 如下圖:

我要的布局效果是 不管左側(cè)和右側(cè)哪個內(nèi)容多 哪個高度高 都以高的為準(zhǔn)
在網(wǎng)上找了一些相關(guān)資料 解決辦法比較多 但個人覺得還是用負(fù)外邊界和內(nèi)補(bǔ)丁相結(jié)合的辦法來解決最簡單也最為實用

說一下具體的做法:

①兩列div最外面設(shè)置一個box 并設(shè)置超出部分隱藏 overflow:hidden 并設(shè)置寬度width(這個寬度的具體值視左右兩列的寬度而定)

②left和right這兩個div都設(shè)置margin-bottom:-9999px;padding-bottom:9999px;

基本上做到以上兩點(diǎn) 我們的問題就可以很漂亮的搞定了

一切盡在我們掌握中 看起來很完美 是嗎?

事情并非我們所想象 網(wǎng)上的很多實例 都是針對兩列均為背景色而言 并沒有像我上圖那樣左側(cè)一列div有邊框

因為在實際工作布局所需效果中 我們往往需要給左列的div加個邊框啊什么的

那好啊 要邊框的話 我們就加border好了 這不是so easy嗎?恩 是的 起初 我也很你是一樣的想法

但當(dāng)我真正把border加上去后 問題出現(xiàn)了 左列的div只有左上右三個邊框 沒有底邊框 咦?這是怎么回事呢?我想 問題的原因應(yīng)該是margin-bottom:-9999px;padding-bottom:9999px;這個造成的 我不想多加追究了···我很忙 我要搞定這個問題···

我曾經(jīng)試過很多種辦法 我想既然左列的div設(shè)置了margin-bottom:-9999px;padding-bottom:9999px; 導(dǎo)致底邊框不能顯示 那我就在左列div里再加一個div 再對這個div設(shè)置border不就行了嗎?恩 是的 我重寫CSS 預(yù)覽 咦 真的可以了也 我激動萬分 可遺憾的是 這個辦法只適應(yīng)左列的內(nèi)容比內(nèi)容多 也就是說只適應(yīng)左列的高度比右列的高度高 一旦內(nèi)容沒右列的高 內(nèi)容少于右列的內(nèi)容 那個底邊框就緊貼著內(nèi)容的下邊緣 并不是到底 那不得不對這個div也設(shè)置margin-bottom:-9999px;padding-bottom:9999px; 但這樣設(shè)置的話 又回到我們的老問題 底邊框不能顯示 我的功夫白費(fèi)了···咳····

既然這樣不行 那我們就換個思路 我用超級無敵的overflow來幫我搞定這個問題吧

我在最外面的box的后面加上了這句:
<div style=" width:132px; height:1px; background:#87C1FC; overflow:hidden; position:relative; top:-1px;"></div>

寬度是這個左列div的實際寬度 1像素的高度 背景顏色是這個div的背景顏色 超出部分隱藏 為什么要讓它相對定位 并且讓它居上-1px呢 因為這個div(實際上就是左列div的底邊框)是緊跟在最外面的box后面的 也就是說它會緊跟著那個高的div后面 這樣它總會高出1px 所以為了與其平齊 我就設(shè)置了top:-1px 盡管這是個小問題 我們還是要精益求精 呵呵···

至此 帶邊框的自適應(yīng)問題終于解決了

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多