Собственные Google Closure Templates (Soy) по умолчанию удаляет пробелы в конце строки, и дизайнер шаблонов явно вставляет пробел, используя {sp}
.Вероятно, это недостаточно веская причина для перехода с PHP, но я просто хотел обратить на это внимание.
Кроме того, следует понимать, что HTML 4 позволяет исключать некоторые теги, как рекомендованоДокументация по скорости страницы при минимизации HTML (http://code.google.com/p/page-speed/wiki/MinifyHtml). Вы можете исключить </p>
, </td>
, </tr>
и т. Д. Для получения полного списка элементов, для которых можно пропустить конечный тег, найдите «- O
» вHTML 4 DTD (http://www.w3.org/TR/REC-html40/sgml/dtd.html). Вы можете даже полностью опустить теги <html>
, <head>
, <body>
и <tbody>
, так как начальный и конечный теги являются необязательными ("O O
" в DTD).
Вы также можете опустить кавычки вокруг атрибутов (http://www.w3.org/TR/REC-html40/intro/sgmltut.html#h-3.2.2), таких как id
, class
(с одним именем класса) и type
, которые имеют простое содержимое (то есть соответствует * 1023).*). Для атрибутов, которые имеют одно возможное значение, вы можете исключить значение (например, просто checked
вместо checked=checked
).
Некоторые люди могут счесть эти советы отталкивающими, потому что мы былив течение многих лет готовиться к предстоящему мируle LALR парсеры для XHTML.Таким образом, такие инструменты, как HTML Tidy Дейва Раггетта, генерируют HTML с соответствующими закрывающими тегами и кавычками вокруг значений атрибутов.Но давайте посмотрим правде в глаза, у всех браузеров уже есть парсеры, которые понимают HTML 4, любой новый браузер будет использовать синтаксический анализатор HTML 5, а не XHTML, и мы должны научиться писать HTML, оптимизированный для размера.
Однако, помимо пары крупных компаний, таких как Google и Facebook, я предполагаю, что размер страницы является незначительным компонентом задержки, поэтому, если вы оптимизируете свой собственный сайт, это, вероятно, связано с вашими навязчивыми тенденциями, а не с производительностью.