Фиксация, в которой было внесено изменение: https://github.com/h5bp/html5-boilerplate/commit/7a2f9dcf8b56b6923a5bde028ea1838d32572588
Актуальные выпуски: №335, №1059.
От WHATWG
DOCTYPE должен состоять из следующих компонентов в указанном порядке:
- Строка, которая является совпадением ASCII → без учета регистра ← для строки ".
- Один или несколько пробелов.
- Строка, которая является совпадением ASCII → без учета регистра ← для строки «html».
- Необязательно: устаревшая строка DOCTYPE или устаревшая разрешенная строка DOCTYPE (определенная ниже).
- Ноль или более пробелов.
- Символ U + 003E БОЛЬШЕ, ЧЕМ ЗНАК (>).
Другими словами, без учета регистра.
Так что, согласно спецификации, случай не имеет значения. Кроме того, браузеры (AFAIK) на самом деле не заботятся, и валидатор W3C подходит в любом случае.
<!doctype html>
Плюсы:
html
в объявлении doctype
или что-либо еще в этом отношении)Минусы:
Мысли?
Я подумал об этом, как только прочитал статью о сжатии.
Обратите внимание, что аргумент «сжимает лучше» является обобщением - он предполагает, что в остальной части документа строчные символы document
встречаются чаще, чем символы верхнего регистра DOCUMENT
. Это может быть верно не для всех документов.
«Может вызвать любопытство разработчика» - это субъективно - то же самое можно сказать и о <!DoCtYpE hTmL>
.
Еще одна причина, по которой используется верхний регистр, - это совместимость с полиглотом и XHTML (хотя XHTML - это не то, что кто-то активно поддерживает).
Сжатие «doctype» и «DOCTYPE» никогда не будет иметь значения.
Заглавные буквы DOCTYPE будут соответствовать его упоминаниям в документации WHATWG.
Строчные буквы в doctype сохранят соответствие с @paulirish.
ПРОВЕРИТЬ Мат .
Я бы предпочел оставить doctype как есть, в верхнем регистре. Никакой другой вариант не представляет особой ценности.
@mathiasbynens Я также думаю, что вариант в верхнем регистре имеет небольшое преимущество, как вы сказали, вероятно, не потому, что кто-то хочет поддерживать полиглот / XHTML независимо от того =) ... но любой синтаксический анализатор xml может анализировать HTML-документ с верхним регистром, в то время как нижний или в смешанном случае возникает ошибка синтаксического анализа ... не то чтобы многие люди тщательно анализировали html-документы с помощью синтаксических анализаторов XML (а также остальные теги должны быть совместимы с XHTML, например, самозакрывание и т. д.), но кто знает, когда вы будете, поэтому я не вижу, чтобы кто-то пострадал из-за прописных букв, но в описанном случае это было бы возможно ... по крайней мере, так я это понял =)
некоторые IDE / текстовые редакторы жалуются на синтаксис
Не могу найти доказательств этого сейчас, так как я думаю, что это решено.
Textmate 2: нет проблем. ST2: нет проблем. WebStorm 7: нет проблем. Атом: все хорошо.
Учитывая это, нет серьезных причин, по которым мы бы избегали строчных букв.
H5BP давно отказался от поддержки полиглотовых документов, не стоит пытаться поддерживать его на уровне doctype, а затем игнорировать поддержку остальных.
Я думаю, что тип документа в нижнем регистре соответствует нижнему регистру используемых тегов html. Помимо единообразия, верхний регистр звучит громко, неприятно и не является спокойным введением в исходный код HTML. Google использует строчные буквы doctype, наряду с сотнями тысяч сайтов, созданных с использованием более ранних версий h5bp.
@exside, что сделало бы его несовместимым с некоторыми другими решениями, принятыми h5bp. Вы упомянули, например, самозакрывающиеся теги; h5bp не имеет самозакрывающихся тегов. Если doctype должен быть в верхнем регистре для совместимости с xml, тогда все остальное также должно быть совместимо с xml.
Это не означает, что нет никаких причин для использования прописных букв, а только то, что причина, которую вы указали, неверна или, по крайней мере, несовместима с некоторыми другими решениями, которые принял h5bp.
@ QWp6t с этой точки зрения, вы определенно правы =) ... я использую свой "собственный" созданный базовый шаблон, который наверняка получил хорошее количество лучших практик от h5bp, поэтому у меня не было этого "чистого" При написании этого комментария помните о h5bp, но мне почему-то понравилась строгость XHTML, и поэтому я все еще пишу XHTML-совместимым способом (например, с самозакрывающимися тегами и т. д.)
Какой здесь вывод? Я до сих пор не вижу причин менять doctype.
Я до сих пор не вижу причин менять doctype.
@drublic для меня основная причина этого изменения в том, что он кажется более согласованным с остальной частью кода.
Я думаю, что тип документа в нижнем регистре соответствует нижнему регистру используемых тегов html. Помимо единообразия, верхний регистр звучит громко, неприятно и не является спокойным введением в исходный код HTML. Google использует строчные буквы doctype, наряду с сотнями тысяч сайтов, созданных с использованием более ранних версий h5bp.
Учитывая приведенный выше комментарий от @paulirish, я думаю, что проголосую за изменение.
@alrra Да, я _for_
Я думаю, что тип документа в нижнем регистре соответствует нижнему регистру используемых тегов html.
И наоборот, верхний регистр будет отличать строку объявления DOCTYPE (преамбулу) от обычных тегов html.
Мой: +1: за <!DOCTYPE html>
Спасибо всем за отзывы!
Если кому-то интересна статистика:
(: предупреждение: имейте в виду, что эти числа не обязательно являются репрезентативными для реальных страниц с контентом, поэтому относитесь к ним как к забавной статистике!)
404.html
404.html
с использованием <!DOCTYPE html>
original size: 1242 B
gzipped size: 580 B
─────────────────────────────
reduction: 662 B [53.3%]
404.html
с использованием <!doctype html>
original size: 1242 B
gzipped size: 574 B
─────────────────────────────
reduction: 668 B [53.8%]
index.html
index.html
с использованием <!DOCTYPE html>
original size: 1760 B
gzipped size: 879 B
─────────────────────────────
reduction: 881 B [50.1%]
index.html
с использованием <!doctype html>
original size: 1760 B
gzipped size: 875 B
─────────────────────────────
reduction: 885 B [50.3%]
Я только что понял, что мне нужно было проголосовать, используя фоновое изображение в Твиттере.
Самый полезный комментарий
Сжатие «doctype» и «DOCTYPE» никогда не будет иметь значения.