国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > CSS > 正文

IE6的3像素 bug解決方案分享

2024-07-11 08:54:31
字體:
來源:轉載
供稿:網友

在我們這樣一個神奇的國度,到了2014年了,居然還是有很多人的電腦上用著XP,安裝的是IE6,他們沒有想過要升級,我們就得想著兼容他們。。。。

一、 6爺我喝高了,最后一行有重影。那什么是IE6 的3像素bug?

IE7修正了IE6中的一個bug,bug名字就叫做“3像素bug”,即文字溢出bug. 表現形式是ie6瀏覽器下文字或者圖片溢出,莫名其妙的自動復制幾個字符。如下圖,就自動溢出了一個“下一頁”。



二、3像素bug是怎么產生的?

一個容器A包含2兩個具有“float”樣式的子容器B和C。
第二個容器C的寬度大于父容器A的寬度,或者父容器A寬度減去第二個容器C寬度的值小于3。
在第二個容器前存在注釋(這也是為什么此bug也叫做“IE6注釋bug”的原因)。

下面是這段代碼再現了bug的產生過程,如果用ie6瀏覽,則在下面 會多出一個“醉”字。

<div style=”width:200px;”>
<div style=”float:left;”></div>
<div style=”float:left;width:200px;”>我是6爺,我沒醉</div>
</div>

三、怎樣讓6爺快速醒酒?ie 6 3像素bug的最佳解決辦法:margin-right:-3px;

關于解決辦法網上有很多轉載,但是我一一試過之后很多都不奏效或者不理想。下面是一段摘錄:

1.改變結構,不出現【一個容器包含2兩個具有“float”樣式的子容器】的結構。
——此解決方案的評論:瘋了!因噎廢食的做法。
2.減小第二個容器的寬度,使父容器寬度減去第二個容器寬度的值大于3,例如將本文示例中第二個子容器的寬度改為197px。
——此解決方案的評論:在滿足頁面布局的前提下可以使用。但是當情況比較復雜的時候,可能實施起來比較困難。
3.去掉所有的注釋。
——此解決方案的評論:最直接的做法,但是“沒有注釋的代碼”,的確不是一個好的代碼寫作習慣。
4.修正注釋的寫法。將 <!– 這里是注釋內容 –>寫成<!–[if !IE]>這里是注釋內容<![endif]–>
——此解決方案的評論:還不錯的解決方案,但是并不是每個人都對<!–[if !IE]>這里是注釋內容[endif]–>這種注釋寫法很欣賞。
5.在第二個容器后面加一個或者多個<div style=”clear”></div>來解決。
——此解決方案的評論:另人感覺很不爽的解決方案。但是的確能解決。影響網頁效率

這五種方法我都不推薦,根據我的實驗最直接的解決問題的方法是在父容器A添加 margin-right:-3px; 一般情況下都可以解決這個問題。

<div style=”width:200px;margin-right:-3px;”>
<div style=”float:left;”></div>
<div style=”float:left;width:200px;”>我是6爺,我沒醉</div>
</div>

四、珍愛生命,遠離ie6

因為溢出bug產生的根本原因沒人可以解釋,所以也就沒有對應的一勞永逸的辦法。要從根本上解決這個問題只有一個辦法,就是kill ie6。但是MS微軟比我們還著急,可是就是不給力啊。。。。。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 兰考县| 密云县| 高唐县| 卓资县| 漳平市| 杨浦区| 民权县| 泽州县| 冷水江市| 汉川市| 宝清县| 休宁县| 合江县| 噶尔县| 鄂托克旗| 海林市| 郯城县| 蓬莱市| 梁山县| 唐河县| 巴中市| 本溪市| 梁河县| 丰台区| 临湘市| 霸州市| 武城县| 华容县| 北流市| 横山县| 冀州市| 东阳市| 新乡县| 松滋市| 伊川县| 类乌齐县| 历史| 乡城县| 舞阳县| 罗源县| 平乡县|