我目前正在設計的一個網站需要通過W3C的標記驗證。我們使用的Drupal 7強制我們的主題使用XHTML + RDFa。我們正在使用Google地圖,這需要一個iFrame纔會導致我的悲傷。在Drupal 7上使用iFrame在XHTML + RDFa上進行驗證
元素「的iframe」未定義
任何人有任何想法如何,我可以解決這個驗證測試?用Google Maps JavaScript替換iframe是否明智?
我目前正在設計的一個網站需要通過W3C的標記驗證。我們使用的Drupal 7強制我們的主題使用XHTML + RDFa。我們正在使用Google地圖,這需要一個iFrame纔會導致我的悲傷。在Drupal 7上使用iFrame在XHTML + RDFa上進行驗證
元素「的iframe」未定義
任何人有任何想法如何,我可以解決這個驗證測試?用Google Maps JavaScript替換iframe是否明智?
驗證的暴政並不總是一件好事。如果您必須使用不允許的文檔類型/模式,並且需要使用的服務,那麼您將被卡住。 (a)iframe的工作原理是跨瀏覽器,(b)自XHTML 1.x規格確定以來,已經在HTML5中獲得了新的生命,其中它是一個完全有效的元素,許多新功能。
此外,幾乎可以肯定的是,您正在使用text/html內容類型爲您的網頁提供服務,這意味着瀏覽器不會像驗證程序那樣處理您的標記,因此驗證程序的結果是基本上是徒勞的。
如果不管你是否真的有符合,那麼你將不得不使用。
所有這一切說,我不認爲有必要使用谷歌地圖。一種選擇可能是使用<object>
代替。但是我沒有使用Google Maps(V2 JavaScript API),只是將地圖元素直接嵌入到容器頁面中。似乎工作正常。
雖然我沒有使用Drupal 7。我不知道可能會應用哪些額外限制。
如果標記是從JavaScript代碼添加的,那麼該網站將通過驗證。
我也不確定,使用Google Maps JavaScript時必須使用該HTML標記。
這將是工作
<script type="text/javascript">
$(document).ready(function(){
$('#iframe').after('<iframe src="url" scrolling="no" frameborder="0" overflow:hidden; width:400px; height: 70px;"></iframe>');
});
</script>