Pregunta

Un desarrollador senior me preguntó hoy qué tipo de documento usaría si fuera a escribir algo (personal / no comercial) para la web abierta.

Respondí, <!doctype html>, a lo que fui recibido con una mirada de sorpresa, horror y sorpresa y luego me pidieron que me explicara.

En mi opinión, es un buen candidato porque los navegadores actuales (IE, FF, Opera, Safari) lo verán y cambiarán el contenido al modo estándar, aunque no implementen HTML5. Si realmente quiero aprovechar los elementos HTML5, puedo usar algunos JavaScript para crear una referencia a esas etiquetas no reconocidas por, por ejemplo, IE (por ejemplo, document.createElement('article');) y luego trabajar con ellas como si fueran partes nativas del DOM .

¿Fue realmente una respuesta tan mala? ¿Qué habría respondido y por qué?

¿Fue útil?

Solución

Si bien <! doctype html > está perfectamente bien, La recomendación de WHAT-WG es usar <! DOCTYPE html > , en caso de que termines sirviendo el documento como XHTML5 (en cuyo caso el uso de mayúsculas es importante).

@David Dorward (no se puede comentar todavía, así que ...) No estoy de acuerdo con su representación de HTML5. Mientras que las cosas nuevas (elementos estructurales, etc.) actualmente no son compatibles con los navegadores, HTML5 es 90% HTML4 con manejo de errores definido (finalmente). Los navegadores analizan HTML5 de la misma manera que HTML4, por lo que, si no utilizas elementos estructurales ( div ), las diferencias son mínimas. Validator.nu ofrece mejores resultados que el validador HTML4.1 Strict de W3, se está desarrollando más rápidamente y se basa en una especificación más detallada.

Mi consejo sería ignorar las novedades en HTML5 por el momento y tratarlas como una especificación más precisa para HTML4. No hay desventajas y varios beneficios.

Otros consejos

<! doctype html > parece estar bien ..

  

Lo bueno de este nuevo DOCTYPE, especialmente, es que todos los navegadores actuales (IE, FF, Opera, Safari) lo verán y cambiarán el contenido al modo estándar, aunque no implementen HTML5. Esto significa que podría comenzar a escribir sus páginas web utilizando HTML5 hoy y tenerlas durar mucho, mucho tiempo. / http://ejohn.org/blog/html5-doctype/

  

¿Fue realmente una respuesta tan mala?

<! DOCTYPE html > no fue una mala respuesta.

  

¿Qué habrías respondido y por qué?

Habría dado mi respuesta enlatada sobre eligiendo un doctype en general, incluso aunque uso <! DOCTYPE html > para mis nuevas publicaciones personales.

HTML5: herramientas de control de calidad experimentales e inmaduras que tienen un objetivo en movimiento. (Y si tiene que usar JavaScript (que podría estar desactivado) para que se reconozcan los elementos estructurales básicos, entonces 'eeep!').

XHTML: requiere una piratería del Apéndice C para trabajar con Internet Explorer. Los DTD son menos expresivos que HTML 4.

HTML 4: maduro, bien probado, en su mayoría compatible con navegadores, no es necesario ningún hackery. Las herramientas XML no pueden analizarlo (pero, de todas formas, pocas personas las usan internamente en las páginas web)

Estricto - un buen núcleo.

Transicional: se deben evitar las cosas más estrictas que (con un par de excepciones).

Por lo tanto, HTML 4.01 estricto probablemente sea la mejor opción. Obviamente hay excepciones, pero eso lo pondría en el punto de partida.

Habría respondido igual que usted porque está en lo correcto y ya no uso ningún otro tipo de documento para ninguna de las nuevas páginas web por los motivos que figuran a continuación en varios buenos enlaces (incluida la respuesta de Anne a continuación porque trabaja para Opera). / p>

En primer lugar, diría que el Doctype no debería haberse introducido en primer lugar. No puedes servir páginas de navegador cruzado con nada que no sea el tipo de texto / html mimetype y no empezar a utilizar DTD.

Todo lo que hace el doctype es activar el modo de estándares y solo es necesario porque muchos sitios no están diseñados para los estándares, y mucho menos para la especificación w3c. Si el doctype tiene un solo propósito, entonces hágalo simple. HTML5 hace exactamente eso. Los desarrolladores no deberían aburrirnos de que el tipo de documento tenga otro significado que no sea activar o desactivar el modo de estándares.

El desarrollador 'senior' debe continuar con su trabajo y dejar de molestar a la gente por cosas tan insensatas.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top