首先我們知道這個效果應該是一個老話題了。
今天整理文件的時候,發現自己以前的一些布局的解決方法躺在文件夾里很長時間了,翻翻老底吧
需要說明的是有幸也見到過cssplay的老工程師站長對這個效果的實現,而且肯定是很早就給出來了。
閑話少說,上源碼:
觸發并利用ie6-layout的怪異特性,css實現:
<style type="text/css">
.ie6-out{
_margin-left:900px;
_zoom:1;
}
.ie6-in{
_position:relative;
_float:left;
_margin-left:-900px;
}
#min-width{
min-width:900px;
background:#ccc;
line-height:200px;
_zoom:1;
}
</style>
<div class="ie6-out">
<div class="ie6-in">
<div id="min-width">ie6-下,容器實現模擬min-width效果。請任意改變瀏覽器窗口大小,再點擊按鈕“查看寬度”。</div>
</div>
</div>
css實現演示:
運行代碼框
[ctrl+a 全部選擇 提示:你可先修改部分代碼,再按運行]
擴展演示:
運行代碼框
[ctrl+a 全部選擇 提示:你可先修改部分代碼,再按運行]
css expression
——相信許多人在用這個方法實現容器最小寬度時都時常會被莫名其妙的死機所困擾,最后往往無果而終。
這里特別需要指出的是兩點:
1. ie6-的標準模式下和quirk模式下代表視口的元素是不一樣的,前者為<html>,后者則為<body>;
2. ie6-在以上兩種不同的模式下,其對包含內容溢出時的不同表現形式,從而導致了賦值判斷上的死循環。解釋起來有些啰嗦,自己實踐一下吧。
css expression實現最小寬度源碼:
演示:
運行代碼框
[ctrl+a 全部選擇 提示:你可先修改部分代碼,再按運行]
以上兩種解決方法在ie6-的標準模式下和quirk模式下都可實現,ie expression在這個應用中也未發現cpu效率問題。
新聞熱點
疑難解答