網(wǎng)頁排版應(yīng)該考慮IE6的兼容性問題
來源:易賢網(wǎng) 閱讀:751 次 日期:2016-06-23 10:53:28
溫馨提示:易賢網(wǎng)小編為您整理了“網(wǎng)頁排版應(yīng)該考慮IE6的兼容性問題”,方便廣大網(wǎng)友查閱!

下圖是本站統(tǒng)計(jì)系統(tǒng)中訪客詳情中瀏覽器查看率,IE6占據(jù)百分之40多。雖然瀏覽器的種類很多,光一個(gè)IE就有IE5.5,IE6,IE7,IE8等多版本,在這眾多的高版本中,IE6依然受大多數(shù)用戶所喜歡,所以排版時(shí)候就不的不去考慮IE6的兼容問題,要不然會(huì)損失很多訪問者。

名單

下面列舉IE6中10個(gè)不得不注意的問題:

1. 使用 DOCTYPE

你需要在HTML頁面的最頂部加上DOCTYPE類型,當(dāng)然, strict版是值得推薦的,例如:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"

"http://www.w3.org/TR/html4/strict.dtd">

或者, XHTML頁面的!DOCTYPE:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

你最不想看到的是,IE6進(jìn)入怪癖模式 – 其實(shí)已經(jīng)夠多怪癖了。

2. 設(shè)置position: relative

設(shè)置position:relative解決了不止一個(gè)問題,特別當(dāng)需要設(shè)置對齊的時(shí)候。很明顯,你需要明白的一點(diǎn)是,絕對定位是相對來說的。說不定,因?yàn)槟銢]有設(shè)置,而不知道東西都飛到那去了。比如,你設(shè)計(jì)了每篇文章前都有一張圖片,最后,你發(fā)現(xiàn),只有一張圖片在頁面上,或許,是他們重疊了。

3. 給浮動(dòng)元素設(shè)置 display:inline 值

這源于著名的IE6雙倍外邊距BUG,例如,你給一個(gè)DIV設(shè)計(jì)了浮動(dòng),并且,設(shè)置了margin-left:5px;,在IE6中很可能就是margin-left:10px了,這里,給浮動(dòng)元素設(shè)置 display:inline;,即可解決問題。

4. 為元素設(shè)置 hasLayout

很多IE6(或IE7)的問題可以用設(shè)置hasLayout值的方法來解決。(如果你不知道hasLayout是什么,請看這里)

最簡單的給元素設(shè)置hasLayout值的方法是給加上CSS 的height或width(當(dāng)然,zoom也可以用,但這不是CSS的一部分)。設(shè)置一個(gè)具體的值是推薦的,但有時(shí)候并不一定知道高度多少,這里,你可能會(huì)用到height:1%。如果父元素沒有設(shè)置高度,那么元素的物理高度并不會(huì)改變,但是,已經(jīng)具備hasLayout屬性。

5. 解決字符重復(fù)出現(xiàn)的問題

復(fù)雜的布局可能導(dǎo)致一些浮動(dòng)元素里面的文字,出現(xiàn)在清理浮動(dòng)位置的下面。這是一個(gè)奇怪的問題,下面這此可以幫你解決:

•確保浮動(dòng)元素設(shè)置了 display:inline;

•在浮動(dòng)元素中使用 margin-right:-3px;

•在浮動(dòng)元素的最后一個(gè)元素后加上一個(gè)IE注釋,例如: <!--[if !IE]>把你的注釋放這里… <![endif]-->

•在最后的元素中加上一個(gè)DIV(這以設(shè)置width 為90% 或者其他相似的高度)

UPDATE: 最簡單的方法是刪除掉所有注釋。(感謝恬瑋兒的提示,我自己并沒有遇到過,不過,google了一下,發(fā)現(xiàn)這個(gè)方法也可以解決,并且,這是值得推薦的一個(gè)方法。)

你可以到positioniseverything.net中查看更多關(guān)于這個(gè)的解釋。

6.只在<a>標(biāo)簽中使用hover,IE6只支持<a>標(biāo)簽顯示hover樣式

當(dāng)然,你還是可以通過JS來解決這個(gè)方法。但是, 這關(guān)于到可訪問性的問題。建議不要把重要的內(nèi)容設(shè)置在利用JS來實(shí)現(xiàn)的hover中。

7. 使用!important 或高級選擇器來區(qū)分IE瀏覽器

比如min-height可以避免使用CSS來實(shí)現(xiàn)對IE的兼容。

#element {

min-height: 20em;

height: auto !important;

height: 20em; /* 讓IE6顯示這個(gè)高度 */

}

IE6 并不能正確地識別min-height,可以設(shè)置固定的高度,讓IE6解析為20em。即使如此,它還是會(huì)因?yàn)閮?nèi)容的尺寸擴(kuò)大而改變高度。而另一個(gè)方法是使用高級選擇器:

#element {

min-height: 20em;

height: 20em;

}

/* 忽略 IE6 */

#element[id] {

height: auto;

}

8. 避免按比例確定的尺寸

比例會(huì)讓IE6變得錯(cuò)亂,除非你給父元素添加一個(gè)確切的高度。不然,給其他的加上!important,例如:

body{

margin: 2% 0 !important;

margin: 20px 0; /* IE6 可讀 */

}

9. 盡早測試,經(jīng)常測試

別忘記盡早測試,經(jīng)常測試, 除非你的程度已經(jīng)完成。不然,你可能花更多的時(shí)間來解決IE6的問題。一般情況下,如果你的網(wǎng)站能在IE6和firefox下良好表現(xiàn),估計(jì)其他瀏覽器就不會(huì)有什么大問題了。

10. 重構(gòu)你的代碼

很多情況下,解決一個(gè)問題,可能比重構(gòu)你的代碼要花更多的時(shí)間。

更多信息請查看網(wǎng)頁制作
易賢網(wǎng)手機(jī)網(wǎng)站地址:網(wǎng)頁排版應(yīng)該考慮IE6的兼容性問題
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!

2025國考·省考課程試聽報(bào)名

  • 報(bào)班類型
  • 姓名
  • 手機(jī)號
  • 驗(yàn)證碼
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 加入群交流 | 手機(jī)站點(diǎn) | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號
云南網(wǎng)警備案專用圖標(biāo)
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號:hfpxwx
咨詢QQ:526150442(9:00—18:00)版權(quán)所有:易賢網(wǎng)
云南網(wǎng)警報(bào)警專用圖標(biāo)