2010-10-19 46 views
2

給我打電話,但我希望我的工作得到驗證。使用Google Font API的頁面會驗證爲CSS3,但不會驗證爲CSS2.1。這裏是HREF,直出的谷歌說明:谷歌字體API生成CSS 2.1驗證錯誤

<link href="http://fonts.googleapis.com/css?family=Yanone+Kaffeesatz" rel="stylesheet" type="text/css" id="googlefont" />

CSS 2.1和XHTML 1.0的嚴格是不合理的限制性,所以我不反對腳本的解決方法時,有沒有可行的解決方案(即嵌入閃存視頻,也就是說,我沒有其他跨瀏覽器,易於實現的解決方案)。那麼,是否有一個可行的解決方案,如果沒有,任何人都可以提出腳本解決方法?或者我應該只是驗證爲CSS3並稱它爲好?

感謝,

motorhobo

+0

我認爲驗證問題比您想象的要少。只要它解析得好,舊版瀏覽器就會忽略CSS3規則。這是它設計工作的方式。驗證對於查找拼寫錯誤或丟失方括號非常有用,但其他規則或標籤在實際功能方面不是問題。 – Keyo 2010-10-19 01:06:52

回答

6

這不是很明顯,爲什麼不驗證爲CSS2.1?

Google Font API使用@font-face,其中不是 CSS 2.1。 @font-face目前包含在CSS Level 3 Working Draft中,並且也在中包含在現在棄用的CSS 2文檔中。它將驗證您是否針對這兩個規範進行檢查,但不檢查CSS 2.1。

+0

這就是我正在尋找的答案,謝謝。這應該很明顯,但我想我錯過了它。 Imho與這些標準是如何確定的荒謬接近,它真的使整個驗證概念在現實世界中變得諷刺。 – VanAlbert 2010-10-19 12:13:50

+1

順便說一句我會投這個答案,但我沒有足夠的聲譽呢。 – VanAlbert 2010-10-19 12:14:28

0

這裏有一個有趣的文章解釋爲什麼驗證不是萬能的。確保沒有像孤立標籤那樣的錯誤是很好的做法。實際上,如果它是有效的CSS3並且不在CSS2.1中驗證,則不會有任何問題。

http://www.codinghorror.com/blog/2009/03/html-validation-does-it-matter.html

+0

我完全同意,感謝有趣的鏈接。儘管如此,一些客戶將驗證視爲質量措施。除非您的投資組合中的網站確認,否則這裏的一家代理機構不會僱用您。就像我說過的,在極端情況下,我沒有任何問題,但是由於W3C驗證器默認爲CSS2.1,所以我想找到Google Fonts API/CSS2.1驗證問題的解決方法。 – VanAlbert 2010-10-19 02:17:51

+0

您應該提供一個更新的驗證引擎的鏈接。順便說一下,您現在可以使用html5並將xhtml驗證作爲html5傳遞。我不知道他們爲什麼不爲css做同樣的事情。失敗2.1,通過3.0或類似的東西。 – Keyo 2010-10-19 04:16:30

+0

儘管您提出了一個有效的觀點,但驗證不是一切,這不是問題。問題在於OP正試圖根據規範的錯誤版本來驗證他的代碼。考慮到SO的HTML有多糟糕,指向Jeff的博客以獲得關於如何編寫好的HTML和CSS的建議可能不是最好的想法。 – 2010-10-19 05:44:06