翻譯自:Equal height boxes with CSS part II 原文: http://www.456bereastreet.com/archive/200406/equal_height _boxes_with_css_part_ii/
下面是我翻譯的內(nèi)容,是根據(jù)我對文章的理解意譯的,你就別挑哪里翻譯的不對了,我的目的只是傳達(dá)這個CSS技巧
上一篇的問題就是,這個模型對IE來說等同于垃圾,所以基本只能是做來玩玩而已,沒有什么實際的用處,現(xiàn)在我要做的就是, 讓它也能在IE下更好的顯示,所以我又做了 第二個模型
xhtml結(jié)構(gòu)類似 第一個模型 的只是增加一個新的div給IE
<div class="equal"> <div class="row"> <div class="one"></div> <div class="two"></div> <div class="three"></div> <!--[if IE]> <div class="ieclearer"></div> <![endif]--> </div> </div>
給xhtml增加一個判斷,判斷是否為IE,然后給IE一個特殊待遇,在IE顯示和別的瀏覽器不同的代碼,對于這個判斷IE\MAC優(yōu)先選擇顯示其間的內(nèi)容。
然后在CSS中也增加一個判斷,配合xhtml,用浮動對齊(浮動對齊就不用解釋了)的方式來實現(xiàn)容器的等高并排放置,但是還是無法真實的實現(xiàn)等高,你可以采用添加背景顏色的視覺錯覺來實現(xiàn)視覺上的等高,或者采用別的方法,這里就不進(jìn)行說明了。下面是CSS中的代碼
<!--[if IE]> <style type="text/css" media="all"> .equal, .row { display:block; } .row { padding:10px; } .row div { display:block; float:left; margin:0; } .row .two { margin-left:10px; } .row .three { width:160px; float:right; } .ieclearer { float:none; clear:both; height:0; padding:0; font-size: 2px; line-height:0; } </style> <![endif]-->
到此,整個設(shè)計真正的完成了,雖然不夠完美,對非IE而做出努力顯得有點(diǎn)多余,現(xiàn)在要么IE支持第一個模型,要么我們可能會想出更好的方案來。但是這次嘗試是有價值的。
經(jīng)典論壇討論: http://bbs.blueidea.com/thread-2459988-1-1.html
本文鏈接:http://www.95time.cn/tech/web/2007/4647.asp
出處:藍(lán)色理想
責(zé)任編輯:moby
◎進(jìn)入論壇網(wǎng)頁制作、網(wǎng)站綜合版塊參加討論
|