2015-10-14 79 views
1

創建一個包含html5 doctype的html5網頁,它不加載css。但是,當我刪除doctype它會加載CSS。該頁面包含標準的html5文檔類型。doctype導致css不加載

<!DOCTYPE html> 

我的樣式錶鏈接正確

<link href="css/styles.css" rel="stylesheet" type="text/css"> 

和我的樣式表不包含任何錯誤

我創造括號中的網頁,並使用現場時,CSS做負載的DOCTYPE預覽,但不通過網絡服務器手動加載頁面時。

+0

我會說檢查您的網絡服務器的規格。如果您通過此Web服務器加載您的網站,您在瀏覽器的控制檯日誌窗口中看到了什麼? – Rotan075

+0

顯示你的文件夾結構的屏幕截圖 –

+0

'<!DOCTYPE html>'不應該造成這種情況。問題一定在其他地方。控制檯顯示什麼?瀏覽器是否嘗試加載CSS?例如,在Chrome中,您可以在開發人員工具的「網絡」選項卡中看到這一點。 – ROAL

回答

4

使用Doctype不會阻止瀏覽器加載CSS。

但是,它會將瀏覽器切換爲使用Standards Mode,其中它將停止在舊版瀏覽器中模擬錯誤並嘗試更嚴格地遵循規範。

這將經常導致包含錯誤的CSS部分(例如缺少單位的長度)被忽略(根據規範要求)。

您可能需要修復您的CSS。 A validator將幫助您識別故障。

另一種可能性是服務器聲稱CSS是別的東西。檢查開發人員工具中的Net標籤,並確保使用Content-Type: text/css標頭髮送CSS。如果服務器聲稱它是純文本或HTML,則可能會被忽略。


更新:

該控制檯說,資源解釋爲樣式表,但使用MIME類型text/html轉移:

你需要修復的服務器,因此它提供了正確的內容類型樣式表。它應該是text/css而不是text/html

+0

你是如何解決這個問題的。我正在運行最新版本的Apache。我曾嘗試添加用於CSS的MIME類型,但沒有奏效 –