Я всегда задавался вопросом, имеет ли значение пробелперед DOCTYPE, но я не могу найти любую достоверную информацию в сети. Люди говорят не делать этого, но я не вижу, какой эффект это может иметь, или даже если спецификация говорит, что это должно быть так. Я не могу понять, запускает ли он режим совместимости в IE или что-то подобное.
Причина в том, что в моем (дерьмовом asp.net) коде я предпочитаю писать:
<%@ Page language="c#" Codepage="65001" AutoEventWireup="true" %>
<%@ OutputCache Location="None" VaryByParam="none" %>
<!doctype html>
, чем:
<%@ Page language="c#" Codepage="65001" AutoEventWireup="true" %><%@ OutputCache Location="None" VaryByParam="none" %><!doctype html>
Потому что первый более аккуратный. Но результатом верхнего является несколько пустых строк в вашем отображаемом html.
Не такая уж большая проблема. Просто мне всегда было интересно, имеет ли это значение :)