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