asp.net - w3schools - ¿Mi doctype HTML5 tiene que estar en la primera línea MUY?
w3 schools a (5)
Siempre me he preguntado si el espacio en blanco antes de un DOCTYPE importa, pero parece que no puedo encontrar ninguna información definitiva en la web. La gente dice que no lo haga, pero no puedo ver qué efecto es probable que tenga, o incluso si la especificación dice que debe ser así. No puedo averiguar si activa el modo de compatibilidad en IE o algo tan molesto como ese.
La razón es que en mi código (asp.net crappy), preferiría escribir:
<%@ Page language="c#" Codepage="65001" AutoEventWireup="true" %>
<%@ OutputCache Location="None" VaryByParam="none" %>
<!doctype html>
que:
<%@ Page language="c#" Codepage="65001" AutoEventWireup="true" %><%@ OutputCache Location="None" VaryByParam="none" %><!doctype html>
Porque el primero es más limpio. Pero el resultado de la parte superior es unas pocas líneas en blanco en su html renderizado.
No es un gran problema. Siempre me he preguntado si importa :)
Hay navegadores ocasionales que tienen problemas con el espacio en blanco antes del doctype; el ejemplo clásico fue IE6, que se dice que entra en modo de peculiaridades al verlo. Resulta que esto solo es cierto para algunos tipos muy específicos de espacios en blanco (espacios no rompibles, & nbsp; por ejemplo). Dicho esto, la compatibilidad con IE6 no es alta en la mayoría de las listas de prioridades de las personas.
No, el Doctype
no tiene que ser la primera línea del archivo, sino que debe aparecer antes de la etiqueta <html>
. Ese es el único límite que tiene, por lo que su primer método para hacerlo está bien.
La declaración debe ser lo primero en su documento HTML, antes de la etiqueta.
Obtenido de: w3 escuelas (doctypes)
Para maximizar las probabilidades de evitar el modo Quirks, ponga la declaración doctype al comienzo del documento HTML. No encontrará ninguna declaración oficial sobre esto, ya que el modo Quirks trata sobre violar los estándares y sobre el comportamiento real del navegador. Es parte de la idea misma del modo Quirks que no está documentado; Se supone que los autores no deben confiar en ello. Tiene la intención de hacer que las páginas heredadas se comporten de manera tolerable (como solían hacerlo), no algo que debería usar para las páginas nuevas.
Los navegadores modernos generalmente permiten una línea vacía antes del doctype, o un comentario, o una declaración XML, sin ir al modo Quirks. Pero simplemente no ponga nada allí, a menos que tenga una razón convincente para hacerlo.
Si desea la respuesta oficial, vaya a los documentos oficiales del W3C y lea la sintaxis allí.
Los comentarios y los espacios pueden venir primero.
Aquí está el enlace: http://www.w3.org/TR/html-markup/documents.html#conformant-documents .
Tenga en cuenta que la especificación HTML enlazada por Ray es incorrecta. Mientras que el espacio en blanco está permitido antes del DOCTYPE, la especificación dice que también los comentarios pueden venir antes del DOCTYPE. Pero eso no funciona en Internet Explorer 9 y anteriores.