2011-08-03 15 views
5

在HTML 4和XHTML 1中,不能將類指定給<head>元素。但是,在XHTML 1.0中,您可以給它一個ID。在HTML5中,似乎你可以給它一個類。我很好奇,爲什麼你會想要?爲HTML5中的<head>元素指定類屬性

+1

我會認爲這是語義解析比什麼都重要。 –

+1

正如其他人所說,沒有任何理由拒絕它。請注意,您可以[使用CSS顯示隱藏元素,例如''](http://mathiasbynens.be/notes/css-hidden-elements)(儘管這不需要添加「class」或「id」屬性到它)。 –

回答

5

class是現在稱爲global attributes(與全球事件一起)之一。無論其性質如何,它們都必須應用於DOM中的每個元素。

我相信它與API有關。該規範定義了every DOM HTML element從稱爲HTMLElement的基本接口繼承,該接口定義了前述的全局屬性和事件。即:

interface HTMLElement : Element { 

    // ... 

    // metadata attributes 
      attribute DOMString id; 
      attribute DOMString title; 
      attribute DOMString lang; 
      attribute DOMString dir; 
      attribute DOMString className; 
    readonly attribute DOMTokenList classList; 
    readonly attribute DOMStringMap dataset; 

隨着中說,該規範的編輯器(S)沒做如下說明在全局屬性/事件列表的末尾:

注:儘管這些屬性適用對所有元素而言,它們對所有元素都沒有用處。例如,只有media elements會收到用戶代理觸發的volumechange事件。

所以我想他們不指望你,但他們既不能想出一個理由允許它或允許它。它只是API的一部分(即無論如何,HTMLHeadElementHTMLElement)。

+0

+1非常好的技術答案。所以,是啊,爲什麼你會想要在''上使用課程? –

+0

似乎我在編輯中殺掉了我的最後一句話。 – BoltClock

+0

有趣的是,我添加了一個不存在的語言提示'<! - language:lang-idl - >'並且語法突出顯示器認爲我正在使用C#。 – BoltClock

相關問題