今天在做網(wǎng)站時(shí),發(fā)現(xiàn)ie瀏覽器死活就是加載不了css,火狐、360等瀏覽器都是正常的,于是死找活找解決辦法,最后解決了,我的終極辦法不一定可以解決你的問(wèn)題,但可以逐一排查一下。
可以用360或火狐打開(kāi)試試,網(wǎng)站正常打開(kāi),不是css路徑錯(cuò)誤。往下。
瀏覽器用頁(yè)面編碼解析css,自然會(huì)出錯(cuò)。我的IE更新到IE11時(shí)遇到了這個(gè)問(wèn)題,html給的gb2312,css文件頭給了的@charset"utf-8",css完全加不上。
例:<meta http-equiv="Content-Type" content="text/html; charset=gbk" />
<link href="join_us.css" type="text/css" rel="stylesheet" charset=“utf-8”>
外聯(lián)css文件開(kāi)頭給了@charset "utf-8"
CSS文件中未指定@charset頭聲明,導(dǎo)致IE默認(rèn)使用頁(yè)面編碼來(lái)解碼CSS文件。
在這里解釋一下,gb2312和gbk都是較早的國(guó)標(biāo)碼,主要用于編解碼常用漢字。而utf-8更國(guó)際化一些,同時(shí)適用中文,基于英文的平臺(tái)使用utf-8。GBK、GB2312等與UTF8之間都必須通過(guò)Unicode編碼才能相互轉(zhuǎn)換。
而我已經(jīng)把所有css和html都統(tǒng)一成utf-8,不行,往下。
IE不支持引入外部的Css文件,并且提示MINE Type類(lèi)型不匹配。.css文件不是minetype 類(lèi)型,原因可能是這個(gè).css文件是你創(chuàng)建的其他類(lèi)型(比如txt)文件然后改的后綴。
那就重建一個(gè)css文件,把代碼copy過(guò)去。
或者下載FilesTypeMan 軟件,直接修改文件后綴的minetype類(lèi)型。
<!DOCTYPE>聲明不是 HTML 標(biāo)簽;它是指示 web 瀏覽器關(guān)于頁(yè)面使用哪個(gè) HTML 版本進(jìn)行編寫(xiě)的指令。在 HTML 4.01 中,<!DOCTYPE> 聲明引用 DTD,因?yàn)?HTML 4.01 基于 SGML。DTD 規(guī)定了標(biāo)記語(yǔ)言的規(guī)則,這樣瀏覽器才能正確地呈現(xiàn)內(nèi)容。
HTML5 不基于 SGML,所以不需要引用 DTD。
<!DOCTYPE html> HTML5聲明。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">這個(gè)是dw自動(dòng)在網(wǎng)頁(yè)文件頁(yè)增加了dtd信息(可以刪. 刪除后,瀏覽器會(huì)使用的默認(rèn)dtd.)
該 DTD 等同于 XHTML 1.0 Transitional,但允許框架集內(nèi)容。
另:
<meta http-equiv="X-UA-Compatible" content="IE=edge">
這段代碼告訴IE瀏覽器,IE8/9及以后的版本都會(huì)以最高版本IE來(lái)渲染頁(yè)面。
本地的外聯(lián)css加不上,把頁(yè)面頭部的 <!DOCTYPE html> 把html去掉 就ok了。
實(shí)驗(yàn)了確實(shí)可以,但樣式顯示上出了問(wèn)題。不行,往下。
網(wǎng)站的css用了@import,但是尼瑪連主css都沒(méi)有加載進(jìn)來(lái)。還是不行。
你可以將網(wǎng)站傳至服務(wù)器上,測(cè)試ie是否能訪問(wèn),我這邊一看,果然不行,應(yīng)該就是這個(gè)問(wèn)題。
本機(jī)解決方法:進(jìn)入注冊(cè)表編輯器,查看HKEY_CLASSES_ROOT\.css里面的Content Type 是否是text/css
如何進(jìn)入注冊(cè)表編輯器
通過(guò)快捷鍵"win"+"R",調(diào)用運(yùn)行窗口
在運(yùn)行窗口中輸入regedit,點(diǎn)擊確認(rèn),便可進(jìn)入如圖所示的頁(yè)面效果
改完后,記重新啟動(dòng)電腦,得了,完美解決,收工。