網(wǎng)頁(yè)采用了UTF-8編碼格式,這本來(lái)沒(méi)有問(wèn)題,問(wèn)題是外部CSS文件默認(rèn)是 ANSI編碼,并沒(méi)有保存為UTF-8格式。可能你會(huì)發(fā)現(xiàn)在一般情況下這樣也是沒(méi)有問(wèn)題的,然而當(dāng)CSS文件中包含有中文注釋時(shí)就可能不盡如人意了!
估計(jì)是IE6版本以下的瀏覽器在解析這個(gè)CSS文件時(shí)因?yàn)榫幋a問(wèn)題而無(wú)法正確解析,所以才會(huì)發(fā)生CSS在IE6下不起作用的情況。看來(lái)微軟已注意到這個(gè)問(wèn)題,在IE7中把它修復(fù)了。但是用IE6的人還是不少。因此這個(gè)問(wèn)題需要解決:
方法一:把 CSS、JS 和網(wǎng)頁(yè)文件都統(tǒng)一保存為 UTF-8 格式。
方法二:去掉 CSS、JS 中的中文注釋?zhuān)蛘吒臑橛⑽摹?BR> 上文為IE6因?yàn)榫幋a問(wèn)題無(wú)法正確解析CSS文件
有時(shí)候我們發(fā)現(xiàn)我們寫(xiě)的html頁(yè)面引用外部css文件的時(shí)候在IE7和FF中能夠很好的被解析,即能正常顯示,可在IE6中卻完全沒(méi)有被解析,即css文件里的樣式根本沒(méi)應(yīng)用到我們的html頁(yè)面,這是怎么回事?開(kāi)始我把css文件里頭的所有樣式都復(fù)制粘貼到html頁(yè)面中的[style][/style]中,這樣做以后,IE6、IE7、FF都能正常顯示了,這也就說(shuō)明外部的css文件應(yīng)該是存在什么問(wèn)題了,為什么在IE6中出現(xiàn)這問(wèn)題,而在IE7和FF中卻沒(méi)有?
網(wǎng)上google了下,發(fā)現(xiàn)是IE6中對(duì)頁(yè)面的編碼有嚴(yán)格的要求,我查看了下,朋友發(fā)過(guò)來(lái)的css文件用的編碼是GB2312的,而html文件用的是utf-8的,原來(lái)問(wèn)題就出在這里了,我把css文件內(nèi)容的編碼用ed改成utf- 8,再次測(cè)試的時(shí)候,一切恢復(fù)正常了,還有就是我發(fā)現(xiàn)朋友的css文件里面用中文注釋?zhuān)瑖?yán)重建議朋友們不要在css文件里面用中文來(lái)注釋?zhuān)@樣也會(huì)引起編碼的問(wèn)題。