2009-11-30 12 views
24

frecuencia vemos <!DOCTYPE ...> de la siguiente manera:¿Cuál es la funcionalidad de! DOCTYPE?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 

¿Cuál es la funcionalidad de !DOCTYPE?

Respuesta

23

El uso más significativo de DOCTYPE es switch a browser between Quirks Mode and Standards Mode rendering.

Esta funcionalidad se produjo debido a la representación "interrumpida" en las versiones anteriores de IE. Se descubrió que si Microsoft simplemente "arreglaba" el motor de renderizado de IE, muchos de los sitios existentes no se procesarían correctamente. Así que la forma en que funciona es si pone cualquier declaración válida DOCTYPE en absoluto en su página, la suposición es que usted sabe lo que está haciendo y su navegador lo renderizará de una manera compatible con los estándares, y si no lo pone uno en él se renderizará a la vieja manera "incorrecta".

Esto se hizo originalmente en IE para Mac, pero este comportamiento es el mismo en todas las versiones de IE desde IE5, y Firefox, Chrome, Safari y Opera.

Lo que el DOCTYPE es supone que es un Document Type Definition. HTML es un subconjunto de SGML (como es XML). La DTD le dice a un analizador qué sintaxis está usando. Por lo tanto, en una página web, su DOCTYPE debe coincidir con la versión de HTML que está utilizando.

+0

por lo que el "xhtml1-transitional.dtd" significa el modo peculiar o el modo estándar? – Ricky

+1

Todos los tipos de documento válidos, incluido XHTML 1.0 Transitional, harán que la página se muestre en modo estándar.Sin embargo, si se omite el tipo de documento, la página se mostrará en modo peculiar. –

7

Le dice al validador qué versión de HTML está utilizando. Un navegador usa esta información para representar la página correctamente.

Éstos son versión correcta de DOCTYPE:

  • HTML 4.01 Strict, de transición, de marcos

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> 
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd"> 
    
  • XHTML 1.0 Strict, de transición, de marcos

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"> 
    
  • XHTML 1.1

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> 
    
  • HTML5

    <!DOCTYPE html> 
    
+0

¿Cuál es la diferencia entre estas definiciones? ¿es xhtml 1.1 lo mismo que html 4? – hora

+0

son standarts diferentes – demas

+4

Es posible que desee agregar también el Doctype HTML5: "". –

-1

Se indica al navegador qué versión de HTML que se está cargando haciendo que el tiempo de carga un poco más rápido que el navegador sepa qué esperar.

El doctype es un estándar definido por el w3c: cuando escuchas acerca del desarrollo web basado en estándares, esto es de lo que están hablando. La idea de usar doctype es crear HTML válido que siga al doctype.

Si es inteligente, puede escribir su propio doctype.

-1

El propósito principal (práctico) de DOCTYPEs es forzar IE del "modo quirks" al "modo compatible con estándares", ambos eufemismos para "modo horriblemente roto" y "modo ligeramente roto" (respectivamente).

Cuestiones relacionadas