Есть ли причина не начинать использовать doctype HTML 5? [закрыто]

132

Предполагается, что он будет обратно совместим с HTML4 и XHTML. Джон Ресиг рассказал о некоторых преимуществах .

Если мы не используем какие-либо новые и еще не поддерживаемые функции, будет ли какой-либо недостаток в том, чтобы начать создавать сайты с этим типом документа?

Рики
источник
1
Я закрываюсь, потому что в то время это было серьезной проблемой, но жизнь продолжалась, и HTML5 теперь никуда не годится. Это также привлекает внимание, потому что многие ответы являются мнениями, а не фактами.
Кев

Ответы:

143

Хорошо подумайте об этом:

При использовании в качестве text / html все, для чего вам нужен doctype, - это запускать стандартный режим. Помимо этого, doctype ничего не делает для браузеров.

При обслуживании как text / html, независимо от того, используете ли вы разметку XHTML или разметку HTML, браузеры обрабатывают ее как HTML.

Итак, на самом деле все сводится к использованию самого короткого документа, запускающего стандартный режим (<! DOCTYPE html>), и использования разметки HTML, которая дает правильный результат в браузерах.

Остальное касается согласования, проверки и предпочтения разметки.

С учетом сказанного, использование <! DOCTYPE html> сейчас и попытка привести вашу разметку в соответствие с HTML5 - неплохая идея, если вы придерживаетесь стабильных функций, которые сейчас работают в браузерах. Вы бы не стали использовать в HTML4 или XHTML 1.x то, что не работает в браузерах, не так ли?

Другими словами, вы используете <! DOCTYPE html> с разметкой, подобной HTML4, и при этом учитываете вещи, которые были разъяснены в HTML5. В конце концов, HTML5 - это совместимость с браузерами.

Обратной стороной использования HTML5 сейчас является то, что спецификации могут меняться довольно часто. Это заставляет вас не отставать от спецификации, поскольку она активно меняется. Кроме того, http://validator.nu/ может не всегда быть актуальным, но http://validator.w3.org/ также не всегда актуален, так что пусть это вас не останавливает.

Конечно, если вы хотите использовать разметку XHTML 1.0 и соответствовать XHTML 1.0, вам не следует использовать <! DOCTYPE html>.

Лично я всегда использую <! DOCTYPE html> для HTML.

Shadow2531
источник
4
Я думал, что пропуск URI переводит браузеры в режим причуд, что делает работу по стандартам бесполезной.
graham.reeds
5
Почему вы не можете использовать разметку XHTML 1.0 как <! DOCTYPE html>? Я думал, в этом все дело!
Skilldrick
2
Skilldrick, вы можете писать документы для полиглотов, да. stackoverflow.com/questions/1079427/what-is-a-polyglot-document
Shadow2531
5
«Я думал, что пропуск URI переводит браузеры в режим причуд» - Нет. Большую часть работы над HTML5 выполнял Ян Хиксон, неустанно тестируя множество часто используемых браузеров, чтобы увидеть, что и как работает. Тип документа HTML5 запускает стандартный режим (я считаю) во всех браузерах, в которых есть такая функция.
Пол Д. Уэйт
23
Если это помогает, я только что протестировал <! DOCTYPE html> в IE8, IE7 (с использованием инструментов разработки IE8) и IE6 (с использованием Virtual PC). Ни один из них не перешел в режим причуд. Так что даже старый IE определенно может работать со стандартным типом документа HTML5, не переходя в режим причуд.
Синтаксическая ошибка
3

Мой вопрос к вам: зачем его использовать, если вы не используете какие-либо новые / неподдерживаемые функции. Я не говорю, что с этим нельзя поиграться, но зачем начинать создавать сайты с doctype, которое не дает никаких преимуществ и может быть дополнено XHTML5.

Джастин Йост
источник
3
«Зачем использовать его, если вы не используете какие-либо новые / неподдерживаемые функции» - потому что он короче и легче запоминается? Ничего особенного, конечно, но все же.
Пол Д. Уэйт
Да, но разве это не будет XHTML 1.2 или XHTML 2.0? ;)
Talvi Watia
1
HTML5 - это XHTML5. W3C прекратил разработку X'HTML.
Крис Харрисон
Ну не совсем. XHTML5 и HTML5 - это два разных представления разметки (сериализации) языка HTML. Первый основан на XML, а второй - это уникальный диалект (со специальной семантикой синтаксического анализа) SGML.
Делан Азабани,
2

Я бы сказал, используйте его и тщательно протестируйте. Тогда дайте нам знать, если это взорвало ваш дом или что-то в этом роде. : ')

Бернард
источник
2

Основываясь на последней бета-версии IE8, кажется, что MS будет использовать тип документа HTML5 в качестве обходного пути для трясины переключения режимов IE8. Похоже, что самый большой риск при раннем развертывании документа типа HTML5 заключается в том, что если люди опубликуют много несовместимого с IE8 контента с типом документа HTML5 до того, как появится IE8, MS может нерешительно упростить ситуацию с режимом для HTML5.

Обновление: похоже, это было отклонено. Совершенно очевидно, что теперь, когда выпущен IE8, вышеупомянутые соображения больше не применяются. Да и с IE8 действительно не все просто .

hsivonen
источник
2

Обратной стороной для меня в основном является проверка:

  1. Сторонние инструменты проверки не всегда успевают за меняющимися спецификациями, что делает мои любимые инструменты ненадежными.
  2. Я предпочитаю проверять на соответствие строгим типам документов, чтобы убедиться, что я закрыл все элементы. Это простой способ избежать простых, но отнимающих много времени ошибок вложения. С HTML 5 вам не нужно закрывать элементы, поэтому нет возможности найти несовпадающие теги.
Mediascreen
источник
Это правда, поэтому вам нужно искать средство проверки содержимого HTML: lint.brihten.com/html/help, а не просто средство проверки .
Kzqai
1

если вы собираетесь использовать doctype, поэкспериментируйте с функциями. Пока они не попадают на производственную площадку, а вы их тщательно тестируете, действуйте.

helloandre
источник
1

Учитывайте свою аудиторию и свои потребности. Я пишу такие страницы, как классные тесты, с целевой аудиторией студентов моих курсов, которые используют FireFox 3 в компьютерной лаборатории, оснащенной Ubuntu. Мне нужен SVG с MathMl, встроенный в SVG как foreignObject. Я свободно использую тип документа HTML5 и новые теги HTML5.


источник
0

Взгляните на это сообщение в блоге! Не совсем фанат HTML5 http://www.webscienceman.com/2009/01/24/html-xhtml-html5-future-html/


источник
2
Для людей, все еще читающих это, обратите внимание, что статье (и ответу) почти 2 года, а HTML5 все это время развивался довольно быстро.
rjmunro
0

Для всех, кто это найдет. На диаграмме http://hsivonen.iki.fi/doctype/показаны различные режимы визуализации, которые используют разные браузеры в зависимости от используемого объявления DOCTYPE. Это даст вам хорошее представление о том, как работает переключение DOCTYPE.

Фараз Келини
источник
-16

Лично я бы сказал нет. У HTML5 нет явных преимуществ, и на самом деле можно было бы даже сказать, что все это было провалено с самого начала.

Наличие специализированных тегов для верхнего колонтитула, нижних колонтитулов и боковых панелей - огромная ошибка - они уже есть в виде тегов (div) и имен (классы / id). Зачем нужны специализированные? XHTML1.1 достаточно хорош, точка. Фактически, поскольку большинство браузеров не поддерживают HTML4 правильно, нет смысла использовать doctype, для получения надлежащей поддержки которого потребуются годы.

graham.reeds
источник
10
Дело в семантике. Вы вполне можете избавиться почти от каждого тега в HTML и использовать только атрибуты div, span и style / class. Но тем самым вы удаляете все семантические значения из документа.
Лоран,
2
Только подумайте, насколько это будет полезно для поисковых систем.
Leo Jweda
@Laurent: Итак, если я хочу, чтобы заголовок стал боковой панелью, мне нужно пройти через все мои CSS и разметку, переключая их, потому что это больше не является семантически правильным? Нет. Сделайте его div, назовите как он делает и используйте как хотите. @Laith: В чем это будет хорошо для поисковых систем?
graham.reeds
Холст: хотите его использовать? Ты не можешь Или можете, но теперь вы находитесь в стране целевого программирования. Дело не в стандартах.
graham.reeds
3
«Сделайте его div, назовите его так, как он делает, и используйте его, как хотите». - Чертовски. Пока вы это делаете, сделайте то же самое для всех своих абзацев и списков. Как мне ввести здесь знак.
Пол Д. Уэйт