2016-12-26 33 views
3

我試圖滿足2個跳棋:W3C validatorgoogle page insight鏈接樣式表預緊VS W3C驗證

谷歌網頁洞察建議我異步加載阻止所有CSS文件。嗯,我已經重寫預緊力的方式樣式表文件包含,如下圖,從頭部推遲到身體的末尾:

... 
    <link rel="preload" href="mystyles.css" media="all" as="style" 
        onload="this.rel='stylesheet'"/> 
</body> 

谷歌網頁洞察迫使我從頭部把它弄出來,並把它在身體的盡頭。

好的,我對Google Page Insight很滿意。

W3C驗證說我現在:

Error: A link element must not appear as a descendant of a body element unless the link element has an itemprop attribute or has a rel attribute whose value contains dns-prefetch, pingback, preconnect, prefetch, prerender, or stylesheet

爲什麼 「預加載」 不是rel屬性考上了頭?我試圖分配一個itemprop,但不可能在同一個鏈接中有一個itemprop和一個rel。

+0

鏈接預加載是一個草稿,並且正在進行中。 W3驗證器基於當前的標準。 –

回答

6

這裏是W3C HTML檢查器(驗證器)的維護者。這個原因只是一個檢查錯誤。當I added rel=preloadsupport to the checker時,我忘記將其添加到rel值的列表中,檢查器代碼進行比較以確定是否在主體中允許使用特定的link元素。

無論如何,I’ve now fixed it in the checker sources並將修復程序推送到https://validator.w3.org/nu/

因此,檢查器將不再報告上面的代碼片段的錯誤。感謝您接受這一點。