當元素設置浮動(float)后會被移出文檔流,相信大家都會經常遇到這樣的問題。
這問題的解決辦法有N種之多,因為每種瀏覽器對CSS的解析各異,所以在不同瀏覽器使用清除浮動的元素也會有所不同。
我認為目前還沒有最好的清除浮動元素或組合,而是根據情況分析而選擇,最好的清除浮動元素或組合。
為了兼容不同瀏覽器,可能要使用不同的清除浮動元素組合使用,如:{overflow:hidden; zoom:1;}、{display:table; width:100%;}、{overflow:hidden; height:1%;}
以下分析了部份的消除浮動元素對瀏覽器的支持:
運行代碼框
<p>以下分析了部份的消除浮動元素對瀏覽器的支持:</p>
<p><span id="more-24"></span><a target="_blank" href="/flow.html">測試的實例</a></p>
<style type="text/css"> .m20080111{margin:auto; background:#000;font:12px/160% arial; } .m20080111 td{background:#fff;padding:3px;} .m20080111 th{background:#fff;color:#f00;padding:2px;} .m20080111 strong{font-weight:normal;color:#f00;} .m20080111 .y{background:#080;color:#fff;} .m20080111 .n{background:#900;color:#fff;}</style>
<table border="0" width="98%" cellPadding="0" cellSpacing="1" class="m20080111">
<tr>
<td colSpan="2">更新日期:2008/01/16</td>
<td colSpan="7" align="center">Windows</td>
</tr>
<tr>
<th width="2%" align="right"></th>
<th width="42%" align="right"></th>
<th width="8%" align="center">IE7</th>
<th width="8%" align="center">IE6</th>
<th width="8%" align="center">IE5.5</th>
<th width="8%" align="center">FF</th>
<th width="8%" align="center">Ns</th>
<th width="8%" align="center">Op</th>
<th width="8%" align="center">Sf</th>
</tr>
<tr>
<td align="center">1</td>
<td align="right">float:left / right;</td>
<td align="center" vAlign="middle" class="y">Y</td>
<td align="center" vAlign="middle" class="y">Y</td>
<td align="center" vAlign="middle" class="y">Y</td>
<td align="center" vAlign="middle" class="y">Y</td>
新聞熱點
疑難解答