De alguna manera php rompió doctype

Creé dos hilos aquí y aquí sobre Internet Explorer que funciona en modo peculiar y que rompió el diseño. Después de investigar un poco, descubrí que, de alguna manera, php creaba un lío.

Por ejemplo, si ejecuto el código siguiente como página html en el servidor web, lo analizo correctamente. Estoy usando un CMS pequeño, así que si divido el código en tres partes, digamos pie de página principal (CMS las combina), entonces IE muestra el modo peculiar y el diseño está roto. La salida html del archivo php es la misma que se muestra a continuación.

     body{ font: 11px Tahoma, Verdana, Arial, sans-serif; color: #707070; background: #8c2727 url('../img/bgr_red.png') repeat-x; } a { color:#bc2828; text-decoration:none; font-weight: bold; outline: none; } #wrapper{ position: relative; width: 960px; margin: 70px auto; background-color: #fff; border: 1px solid red; }    

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Creo que el problema está en CMS. Pero, ¿qué podría romper el doctype?

EDITAR: Aquí está la captura de pantalla de Fiddler Ver el rectángulo Que es eso ?

Si un navegador está tratando las dos páginas de manera diferente, entonces hay alguna diferencia entre ellas, incluso si no es aparente de inmediato cuando “Ver código fuente”.

Recomiendo usar una herramienta como Fiddler para ver el contenido real de la página entregada desde el servidor.


Editar: encontrará que las tabs “RAW” y “HEX” son más importantes que “TextView”. Comience con “Raw” y compare el encabezado “Content-Length”, luego mire “HexView” para ver qué ha cambiado.

Lo más probable es que haya alguna salida yendo al navegador antes del doctype.

Asegurarse de que:

  • No hay espacio en blanco ni ningún otro tipo de datos antes de las tags de apertura
  • No hay una lista de materiales al principio si sus archivos se guardan con alguna encoding Unicode

... en cualquiera de los archivos que se están analizando para generar su salida.