2012-11-29 69 views
10

從我讀過,啓動一個HTML5頁面正確的做法是:HTML5的HTML標籤和DOCTYPE

<!DOCTYPE html> 
<html> 

什麼也沒有更多的行。這是真的? (我問,因爲Visual Studio有比這更多。)

(另外,我想知道,如果HTML5真的是目前的標準還是應該使用XHTML5或一些其他版本。)

+2

Visual Studio給你什麼? –

回答

11

根據HTML living standardthe W3C spec,doctype是必需的序言,但是由於遺留原因需要。我引述:

  1. 一個字符串,是字符串 "<!DOCTYPE"一個ASCII不區分大小寫的匹配。
  2. 一個或多個空格字符。
  3. 一個字符串,它是字符串 「html」的ASCII不區分大小寫的匹配項。
  4. 可選地,DOCTYPE傳統字符串或過時的允許DOCTYPE 字符串(在下面定義)。
  5. 零個或多個空格字符。
  6. A U + 003E大號符號(>)。

換句話說,<!DOCTYPE html>,不區分大小寫。

而且<html></html>一個有效的文件

(另外,我想知道,如果HTML5真的是目前的標準還是應該 我使用XHTML5或一些其他版本。)

它不是當前的標準恕我直言,因爲它尚未完成。但是this article現在很好解釋了使用它的10個理由。

+0

請注意,儘管WhatWG和W3C現在正在處理不同的文檔。這部分仍然是一樣的:http://dev.w3.org/html5/spec/single-page.html#the-doctype – Sebastian

+0

@塞巴斯蒂安敏銳的觀察,我應該改變引用? – ElderMael

+0

隨意添加「我的」鏈接到您的答案 - 這兩個都可能是最好的解決方案... – Sebastian

1

是,據我所知,這是正確的。

3

是的,這是真的。 HTML5中沒有更復雜的文檔類型。新標準簡化了,只有你說的那個。

+0

不支持html5的瀏覽器如何處理doctype? –

4

大部分是。但對於the <html> element says

作者HTML5規範鼓勵指定根HTML 元素lang屬性,使文檔的語言。這有助於語音合成 工具確定使用哪些發音,翻譯工具確定要使用的規則等等。

這麼好,對於其內容是在美國英語網頁,將

<!DOCTYPE html> 
<html lang="en-us"> 

此外,如果你正在使用XHTML5擔任application/xhtml+xml你將需要添加的命名空間,也XML等價lang屬性使得它的:

<!DOCTYPE html> 
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-us" xml:lang="en-us"> 
2

按照HTML5草稿,「A DOCTYPE是必需的前同步碼」。建議使用序言<!DOCTYPE html>,但允許傳統文檔類型作爲替代,儘管它們「不應使用,除非文檔是從不能輸出較短字符串的系統生成的」。除此之外,唯一需要的部分是title元素,即使在某些條件下它也可能被省略。 <html>標籤不是必需的。

HTML5不是標準。它甚至不是W3C的推薦(還)。你應該使用什麼取決於你在做什麼。您認爲您使用的是哪個版本的HTML並不重要。重要的是你擁有的標記以及瀏覽器(和搜索引擎等)如何處理它。