2011-04-18 36 views
1

本週末,我爲一個虛構的網站做了一個模板。我經常這樣做,試圖用最小的標記和非常簡潔的CSS來構建一個非常乾淨的編碼網站模板。關於CSS3/@導入和驗證的幾個問題CSS2.1

我想我之前他們移交給客戶我的網站完美驗證。

我有兩個問題(我不知道別人是怎麼做一個完全有效的網站)使用:http://validator.w3.org/check

我使用一些CSS3屬性(轉換,箱陰影,邊界半徑等),這使網站失敗自驗證器檢查CSS 2.1規範後的驗證(我猜)。有沒有什麼方法可以讓你繼續通過CSS中的這些屬性驗證器?你是否將它們分開並用條件註釋來包裝它們?

第二個是@import CSS方法。在我的頭文件中,我有一個名爲main.css的樣式表。在這個樣式表,我有這樣的事情:

/*site structure*/ 
/*@import url("grid_system_960.css");*/ 

/*default style rules 
@import url("layout.css"); */ 

/*navigation.css 
@import url("navigation.css");*/ 

我只是不喜歡這樣保持CSS的模塊化和乾淨,但@import也未能驗證。

有沒有人有任何建議,我可以採取改善我的結構/方法?

回答

8

我想我之前他們移交給客戶我的網站完美地驗證..

停止。驗證是一種工具,而不是競爭。如果你明白代碼失敗的原因以及你偏離規範的後果,那麼這不是問題。

作爲驗證器檢查使用CSS 2.1規範

The validator will use whichever profile you specify

第二

是@import CSS方法。

不要在生產代碼中使用此。它增加了HTTP請求的數量並降低了網站的速度。發佈前合併和縮小CSS。

@import也未能驗證

然後你使用它錯了(可能是由於未能使其在樣式表的第一件事)。 「在CSS 2.1中,任何@import規則必須先於所有其他規則(除了@charset規則,如果存在的話)。」

+0

感謝您的回覆,非常感謝。所以我理解網站開發的權利不應該總是通過驗證..我已經做了一個大型的網站不加載通過驗證,但認爲這是我懶惰.. – Iamsamstimpson 2011-04-18 10:40:37

+3

你應該**瞄準**是有效的,但是當你理解並接受一段特定的代碼無效的全部含義時,那就沒問題。 – Quentin 2011-04-18 10:43:06

+0

謝謝大衛。 – Iamsamstimpson 2011-04-18 10:59:30