解決IE6兼容性問題常見方法
你對(duì)解決IE6兼容性問題常見方法是否了解,這里和大家分享一下,希望對(duì)你的學(xué)習(xí)有所幫助,歡迎大家一起來學(xué)習(xí)。
解決IE6兼容性問題常見方法
1、使用聲明
你必須經(jīng)常在html網(wǎng)頁頭部放置一個(gè)聲明,推薦使用嚴(yán)格的標(biāo)準(zhǔn)。例如
- <!DOCTYPEHTMLPUBLIC“-//W3C//DTDHTML4.01//EN”
- "http://www.w3.org/TR/html4/strict.dtd”>
- or,forXHTML:
- <!DOCTYPEhtmlPUBLIC“-//W3C//DTDXHTML1.0Strict//EN”
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd”>
***你需要是IE6進(jìn)入兼容模式,這已經(jīng)足夠兼容了。
2、使用position:relative
設(shè)置一個(gè)標(biāo)簽position:relative可以解決很多問題,特別是曾經(jīng)有過看不見的經(jīng)歷或者奇怪布局的框架。明顯的,你需要小心,絕對(duì)位置放置的子元素是否都參照找到新位置。
3、為浮動(dòng)元素使用display:inline
IE6兼容性解決方案為浮動(dòng)元素使用display:inline。浮動(dòng)元素會(huì)有一個(gè)著名的IE6雙邊距marginbug。假如你設(shè)置了左邊距5px但實(shí)際上得到了10px左邊距。display:inline可以解決這個(gè)問題,盡管它不是必需的,但是css仍然有效。
4、設(shè)置元素啟動(dòng)hasLayout
大部分IE6(IE7)的渲染問題都可以通過起來元素的hasLayout屬性來兼容。這是IE內(nèi)置的設(shè)定,確定一個(gè)內(nèi)容塊相對(duì)其它內(nèi)容塊是有界限和位置的。當(dāng)你需要設(shè)置一個(gè)行內(nèi)元素例如一個(gè)連接變成塊狀元素或者是透明效果,設(shè)置hasLayout也是必須的。
5、修復(fù)重復(fù)字符的bug
IE6兼容性解決方案修復(fù)重復(fù)字符的bug。復(fù)雜的布局會(huì)觸發(fā)一個(gè)bug:浮動(dòng)對(duì)象的***字符會(huì)出現(xiàn)在已經(jīng)清除浮動(dòng)的元素后面。這里有幾種解決的辦法,部分是理想的,并且一些測(cè)試和出錯(cuò)是必須的。
a、確保浮動(dòng)元素都使用:display:inline;
b、***一個(gè)浮動(dòng)元素使用margin-right:-3px;
c、在浮動(dòng)對(duì)象***一個(gè)元素后使用一個(gè)條件注釋。例如<!—>這里輸入注釋…<![endif]
d、在容器內(nèi)的***使用一個(gè)div空標(biāo)簽(它也必須設(shè)置90%寬度甚至更?。?/p>
6、使用a標(biāo)簽完成可點(diǎn)擊和hover原理
IE6只支持a標(biāo)簽的css定義hover效果
你可以使用它去控制javascript啟動(dòng)的widgets,使得他們?nèi)匀槐3宙I盤操作。這里有個(gè)二擇一的問題,但是a標(biāo)簽是所有解決方案中最可靠的。
【編輯推薦】