¿Cuál es la funcionalidad de!¿TIPO MÉDICO?


A menudo vemos <!DOCTYPE ...> como sigue:

<!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?

Author: Paul Stenne, 2009-11-30

5 answers

El uso más significativo de DOCTYPE es cambiar un navegador entre el Modo Quirks y el Modo Estándar renderizando.

Esta funcionalidad surgió debido a la representación "rota" en versiones antiguas de IE. Se dio cuenta de que si Microsoft solo "fija" el motor de renderizado IE un montón de sitios existentes no se representaría correctamente. Así que la forma en que funciona es si pones cualquier declaración DOCTYPE válida en tu página la suposición es que sabes lo que estás haciendo y su navegador se renderizará de una manera compatible con los estándares, y si no coloca uno, se renderizará de la manera "incorrecta" anterior.

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 se supone que es el DOCTYPE es una Definición de Tipo de documento . HTML es un subconjunto de SGML (al igual que XML). La DTD le dice al analizador qué sintaxis está utilizando. Así que en una página web su DOCTYPE debe coincidir con la versión de HTML que está utilizando.

 25
Author: Dave Webb,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-11-30 10:23:55

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

Aquí están la versión correcta de DOCTYPE:

  • HTML 4.01 Estricto, Transicional, Frameset

    <!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, Transitional, Frameset

    <!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>
    
 8
Author: demas,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-05-20 19:15:52

La sintaxis HTML de HTML5 requiere que se especifique un DOCTYPE para garantizar que el navegador renderice la página en modo estándar.

 <!DOCTYPE html>
 1
Author: Bipon Biswas,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-04-20 21:08:50

Le dice a su navegador qué versión de HTML está cargando, lo que hace que el tiempo de carga sea un poco más rápido, ya que el navegador sabe qué esperar.

El doctype es un estándar definido por el w3c - cuando se oye hablar de desarrollo web basado en estándares, esto es de lo que están hablando. La idea de usar el doctype es crear HTML válido que siga el doctype.

Si eres inteligente puedes escribir tu propio doctype.

 -1
Author: matpol,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-11-30 09:18:14

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

 -1
Author: cletus,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-11-30 10:03:16