2011-08-03 11 views
5

En HTML 4 y XHTML 1, no puede asignar una clase al elemento <head>. Sin embargo, en XHTML 1.0 puede darle una identificación. En HTML5, parece que puedes darle una clase. Tengo curiosidad, ¿por qué querrías?Asignación de un atributo de clase al elemento <head> en HTML5

+1

Supongo que esto es para el análisis semántico más que nada. –

+1

Como han mencionado otros, no hay una razón real para rechazarlo. Tenga en cuenta que puede [hacer que los elementos ocultos como '' sean visibles usando CSS] (http://mathiasbynens.be/notes/css-hidden-elements) (aunque esto no requiere agregar un atributo' clase' o 'id' lo). –

Respuesta

5

class es uno de los que ahora se llama global attributes (junto con eventos globales). Tendrán que aplicar a cada elemento en el DOM, independientemente de su naturaleza.

Creo que está relacionado con la API. La especificación define every DOM HTML element para heredar de una interfaz base llamada HTMLElement que define los atributos y eventos globales antes mencionados. A saber:

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; 

Dicho esto, el editor (s) de la especificación hizo la siguiente nota al final de la lista de Atributos globales/eventos:

Nota: Aunque se les apliquen estos atributos para todos los elementos, no son útiles en todos los elementos. Por ejemplo, solo media elements recibirá un evento volumechange activado por el agente de usuario.

así que supongo que no esperan que, pero tampoco se puede pensar en una razón para permitir o no a lo permite. Es solo parte de la API (es decir, HTMLHeadElementes y HTMLElement de todos modos).

+0

+1 por la muy buena respuesta técnica. Entonces, sí, ¿por qué * quisieras * usar una clase en ''? –

+0

Parece que maté mi última oración en mi edición. – BoltClock

+0

Interesante, agrego una sugerencia de idioma inexistente '' y el marcador de sintaxis cree que estoy usando C#. – BoltClock

Cuestiones relacionadas