Errores de compatibilidad y DOCTYPE

El día de hoy me encontré con uno de esos errores que toman tiempo en resolverse, pero que al final no era nada difícil.

Pasé un diseño en HTML y CSS a una serie de vistas para usarlas dentro de codeigniter, usando PHP. Todo funcionaba correctamente, es decir, la página creada a partir de PHP se veía igual al diseño preliminar en HTML. Sin embargo, al probarla con IE fue distinto. Al principio pensé que el diseño sólo funcioaba dentro de Firefox, pero no era así, funcionaba perfectamente en ambos exploradores, por lo que la idea de una falta de compatibilidad fue descartada.

Después de revisar el código, la única línea distina era una ,que no pensé que fuera tan relevante, el DOCTYPE.

El XHMTL se deriva de XML, por lo cual hereda el DTD o Document Type Definition, el cual es un conjunto de normas que un determinado tipo de documento debe cumplir.

La versión 1.0 del estándar XHTML permite el uso de tres diferentes DTD. Para indicar cuál se usará se emplea la etiqueta doctype, la cual es la primera línea de la página, incluso antes de la etiqueta html.

Estos son los tres DTD

Strict: (Estricto) Es un estándar muy rígido que requiere una separación total de HTML y CSS.


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

Transitional: (Transitorio) Es el más recomendable, en especial cuando no se sabe cuál usar.

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

Frameset: Poco recomendable, ya que utiliza frames dentro de la página.

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

DTD List
Javier Eguíluz Pérez

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s