2013-02-02 52 views
1

因此,作爲一個例子,我們從Facebook's open graph protocol添加的xmlns協議的XML命名空間中的HTML 5

<html xmlns="http://www.w3.org/1999/xhtml" 
     xmlns:og="http://ogp.me/ns#" 
     xmlns:fb="http://www.facebook.com/2008/fbml"> 

這將是罰款的XHTML文檔類型採取這一頭。 但是HTML 5呢? 我已經搜索了答案,包括之前的stackoverflow問題,並提出了簡短的答案。 我知道如果xmlns屬性的值完全是「http://www.w3.org/1999/xhtml」,則允許在HTML5中使用xmlns屬性。但是前綴是xmlns:ex允許在HTML5下的屬性?如果它們是,使用它們時必需的xmlns屬性?我知道如果沒有其他使用它的屬性,則該屬性不是必需的。 這裏是practically my same question但答案似乎沒有回答這個問題。 和another question詢問有關HTML5,Facebook和xmlns。 只有一條評論提到:

只有xmlns =「w3.org/1999/xhtml」;屬性被允許。 >的xmlns:FB = 「facebook.com/2008/fbml」;每個HTML5都無效。 - - hsivonen 09年7月6日在12:05

那麼這是真的嗎?你不能在HTML5中使用Facebook Open Graph?

+0

我知道的xmlns:OG屬性只是爲了讓頁面的任何訪問者知道的格式數據以及它的含義,並且facebook不需要它來解釋它已經以某種格式預期的數據。但我認爲,當facebook抓取網站並知道查找數據時,可能需要facebook。但是我猜想它不起作用,因爲我正在考慮它。 –

+0

似乎facebook不需要xmlns:og屬性來解釋數據,並且在有人喜歡該頁面/內容時完成,並且只有當某人喜歡該內容時纔會使用它。 我在想,Facebook抓取您的網頁,並提供這個內容直接通過Facebook搜索和喜歡。情況並非如此嗎? –

+0

當某人在狀態消息中「共享」您的URL時,Facebook還會提取此元數據。例如,如果我在Facebook中創建了一個新的狀態並將其中的URL粘貼到其中,則Facebook會使用從您的站點獲取的「og:metadata」填充狀態,以便在狀態消息下提供縮略圖/標題/和鏈接(等)。 – potench

回答

0

這似乎只是一個使用Facebook自己的HTML模板爲其開放圖元標記提供上下文的例子。我不認爲你需要遵循他們的文檔類型(或者標題),因爲它只是提供了<meta property="og:...">屬性示例的上下文。

我從來沒有改變或與doctype聲明有問題,我只是使用標準的HTML5 <!doctype html>聲明。

您可以使用(打開圖調試器)[http://developers.facebook.com/tools/debug]來檢查您的工作。以下是使用HTML5 doctype checked against the open-graph debugger的示例。

它仍然正確地找到開放的圖形對象,雖然加載頁面使用標準的HTML5文檔類型:<!doctype html>