Выбор версии HTML

К какой версии html вы должны стремиться при разработке нового веб-приложения?

РЕДАКТИРОВАТЬ:

круто Я просто пытался почувствовать других. Я обычно использую XHTML 1.0 Strict в своей работе и Transitional, когда другие участвуют в создании контента.

Я отметил первое сообщение XHTML 1.0 Transitional как «правильный ответ», но твердо уверен, что все ответы, данные в этот момент, одинаково действительны.


person sparkes    schedule 06.08.2008    source источник


Ответы (14)


Я бы снимал для XHTML Transitional 1.0. Есть еще несколько нюансов, которым не нравится строгий XHTML, и большинство редакторов, которые я видел сейчас, дадут вам надлежащий толчок, чтобы убедиться, что все сделано правильно.

person Dillie-O    schedule 06.08.2008
comment
Не уверен, насколько актуален ‹developer.mozilla.org/en/› есть, но если это все еще верно для Firefox, переходный режим XHTML 1.0 переведет Firefox в режим почти стандартных стандартов вместо режима полного стандарта. - person Shadow2531; 11.10.2008
comment
Нет ни одной веской причины использовать XHTML вместо HTML. - person Mark; 19.11.2010

HTML 4.01. Нет абсолютно никаких причин использовать XHTML для чего-либо, кроме экспериментальных или академических задач, которые вы хотите запускать только в «малоизвестных» веб-браузерах.

XHTML Transitional совершенно бессмысленен даже для этих браузеров, поэтому я не уверен, зачем кому-то это было нужно. На самом деле очень тревожно, что некоторые люди рекомендуют это.

Я бы сказал, что стремление к HTML 4.01 является наиболее предсказуемым, но на самом деле Тейфион прав: «подойдет все, что отображает вашу страницу».

в ответ на вопрос Майкла Стама:

XHTML основан на XML, поэтому он упрощает синтаксический анализ, и вы также можете использовать XML-компоненты большинства IDE для программного запроса и вставки материала.

Это, конечно, неправда. Многие XHTML в Интернете (если не большинство) не соответствуют действительности XML (и в этом нет необходимости - они не отправляются как XML). Попытка относиться к этому как к XML, когда имеешь дело, принесет вам много головной боли. Эта страница на Stack Overflow, например, будет генерировать ошибки с помощью многих неумолимых инструментов XML из-за недопустимой разметки.

person Lauren    schedule 06.08.2008

Переходные разновидности XHTML и HTML устарели. Они были предназначены только для старых пользовательских агентов, не поддерживающих CSS. См. объяснение в DTD.

W3C рекомендует по возможности использовать Strict, и в наши дни это, безусловно, возможно.

Переходная версия уже удалена в XHTML / 1.1 и HTML5.


XHTML / 1.0 имеет те же элементы и атрибуты (семантику), что и HTML4. Спецификация XHTML / 1.0 даже не определяет никаких элементов! Во всем, кроме синтаксиса, это относится к HTML4.

Кроме того, вы не сможете использовать какие-либо функции XHTML, которые недоступны в HTML (пространства имен, XML DOM), если вы отправляете документы как text/html, и, к сожалению, это требуется для совместимости с IE и другими браузерами, поддерживающими только HTML.

В 2008 году правильным выбором будет HTML4 Strict:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

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

 <!DOCTYPE html>
person Kornel    schedule 11.10.2008

Дилли-О прав со своим ответом на XHTML 1.0 Transitional, но я бы посоветовал использовать XHTML 1.0 Strict и прибегать к Transitional только в том случае, если вам абсолютно необходимы какие-то функциональные возможности, которые Strict не допускает.

person Justin Bennett    schedule 06.08.2008

@Майк:

Хотя я согласен с тем, что для отрисовки страницы не требуется валидность (в конце концов, мы должны поддерживать совместимость с IE6 в ...), создание действительного XHTML, совместимого и действительного, не является проблемой. Проблемы начинаются, когда люди привыкают к HTML 4 и используют устаревшие теги и атрибуты.

Тот факт, что Интернет - это куча мусора, не означает, что каждая новая страница также должна быть грудой мусора. Большинство ошибок валидации в SO настолько тривиальны, что их исправление не займет много времени, например, отсутствие кавычек в атрибутах.

Но это все равно может быть бессмысленным, учитывая тот факт, что W3C не имеет ни малейшего представления, куда они хотят двигаться (см. HTML 5), а некая крупная браузерная компания, которая также производит операционные системы, тоже не заботится об этом, так что сайт может также отправить свой doctype, поскольку HTML 1337 - отстой, и браузеры все равно будут пытаться его отобразить.

person Michael Stum    schedule 06.08.2008

Есть несколько убедительных предупреждения об использовании XHTML, главным образом вокруг того факта, что mime-тип такого документа должен быть отправлен как:

Content-type: application/xhtml+xml

Однако IE 6 и 7 не поддерживают это, и тогда веб-сайты должны отправлять его как:

Content-type: text/html

К сожалению, этот метод считается вредным.

Некоторые также сетуют на тот факт, что, хотя цель XHTML состоит в том, чтобы сделать веб-страницы доступными для синтаксического анализа XML, на практике это не удалось из-за неправильного использования на существующих веб-сайтах.

Я по-прежнему предпочитаю писать документы в XHTML 1.0 Strict, в основном из-за сложности и чистоты и проверку ошибок, которую дает валидатор. Мне немного больше нравится синтаксис, потому что он заставляет меня очень четко указывать, когда заканчиваются теги и т. Д. Это больше для меня личный выбор, чем чисто технический.

person Chris    schedule 21.08.2008
comment
Мне немного больше нравится синтаксис, потому что он заставляет меня быть очень точным в том, когда теги заканчиваются и т. Д. Ну, в большинстве случаев ничто вас не заставляет, и вы всегда можете написать HTML, который на 99% является действительным xml в любом случае . - person Bobby Jack; 11.10.2008
comment
Хорошо написанный HTML4 так же чист, и для него тоже есть валидаторы. Вы уверены, что вам не нравится быть на подножке XML? - person Mark; 19.11.2010

Все, что отображает вашу страницу, будет делать это независимо от того, какой популярный стандарт вы используете. XHTML строже и, вероятно, «лучше», но я не могу понять, какие преимущества вы получите от одного стандарта над другим.

person Teifion    schedule 06.08.2008

Лично я предпочитаю XHTML 1.0 Transitional.

XHTML основан на XML, поэтому он упрощает синтаксический анализ, и вы также можете использовать XML-компоненты большинства IDE для программного запроса и вставки материала.

Transitional не такой строгий, как строгий, что позволяет относительно легко работать с ним, по сравнению со строгим, который часто может быть PITA. Сравнение переходного и строгого

1.0 "более совместима", чем 1.1, и 1.1, похоже, все еще находится в стадии разработки.

person Michael Stum    schedule 06.08.2008

Я стремлюсь к XHTML 1.0 Trans. Лучше согласовываться, чтобы после исправления ошибок в браузерах вам не приходилось работать на время, пытаясь понять, что на самом деле нужно изменить.

На мой взгляд, 1.1 исправлена, а 2.0 разбита вдребезги: действительно ли мне нужен / нужен тег верхнего / нижнего колонтитула?

person graham.reeds    schedule 06.08.2008

Я всегда за XHTML Strict. Я твердо верю, что HTML должен быть больше похож на XML. Это несложно проверить, если вы знаете XML, и валидатор W3 все равно укажет вам правильный путь.

XHTML 2.0 движется к тому, к чему долгое время стремилась W3, - к семантической сети. Лучшим преимуществом XHTML 2.0 для меня является то, что каждая соответствующая страница в сети будет понятна как контент или как статья (для чего страницы - документы), потому что все они относятся к одному и тому же стандарту. Тогда вы сможете создавать интерпретаторы (то есть браузеры), которые представляют контент совершенно по-другому - здесь буквально тысячи идей ждут.

person Ross    schedule 21.08.2008

Если вы хотите использовать XHTML 1.0 совместимым с HTML способом, это нормально. Однако обратите внимание, что валидатор W3C и XHTML DTD ничего не знают о типах mime и о том, как браузеры ведут себя по-разному (например, ‹map› имя / идентификатор) между ними. DTD также ничего не знают о том, насколько хорошо браузеры поддерживают определенные элементы (например, ‹embed›).

Это означает, что XHTML DTD и валидатор не отражают реальность, и попытки соответствовать им бессмысленны.

Если вы хотите использовать XHTML только для того, чтобы закрыть определенные элементы с помощью /> (где html-совместимый), просто используйте разметку HTML5 (чтобы браузер находился в полном стандартном режиме). HTML5 позволяет использовать / ›совместимым с HTML способом (точно так же, как и при использовании разметки XHTML 1.0 с текстом / html, совместимым с HTML). Затем просто придерживайтесь того, что работает (вы знаете лучше некоторых DTD) в браузерах.

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8"/>
        <title></title>
    </head>
    <body>
        <p>Line1<br/>Line2</p>
        <p><img src="" alt="blank"/></p>
        <p><input type="text"/></p>
        <p><embed type="application/x-something" src=""/></p>
    </body>
</html>

Затем используйте http://validator.nu/, чтобы, по крайней мере, убедиться, что он правильно сформирован.

person Shadow2531    schedule 11.10.2008

Если у вас есть инструменты для создания вашего XHTML, как и любого другого XML-документа, используйте XHTML. Но когда вы просто используете шаблоны обычного текста, объединение текста и т. Д., Вы в порядке со старым добрым HTML 4.01.

Браузеры теперь начинают поддерживать этот стандарт 10-летней давности.

Важно: Избегайте называться бозо при создании XML

person user86297    schedule 10.01.2010

Я не думаю, что на самом деле имеет значение, используете ли вы XHTML или простой HTML. Конечная цель здесь - обеспечить низкие затраты на обслуживание и быструю разработку за счет предсказуемого рендеринга. Вы можете получить это с помощью xhtml или html, если у вас есть проверяющий код. Я даже слышал аргументы в пользу того, что лучше всего использовать режим причуд, потому что новые версии браузеров не меняют режим причуд, поэтому обслуживание простое.

В конце концов, все это становится супом из тегов, и не зря, потому что заставить разработчиков веб-приложений писать безошибочный HTML-код означает, что они просят их написать безошибочный код. Валидаторы не помогают, потому что они проверяют только первоначальный просмотр страницы. Вот почему я никогда не видел, чтобы точка в xhtml служила xml для чего-либо, кроме статических сайтов. Уровень высокомерия, который потребуется разработчику веб-приложений, чтобы обслуживать свое веб-приложение, поскольку xml просто ошеломляет.

person Joeri Sebrechts    schedule 11.10.2008

HTML 4.0 Strict или ISO HTML.

person mattl    schedule 17.10.2008
comment
Вы когда-нибудь смотрели на спецификацию ISO HTML? Это более ограничено, чем что-либо еще. - person user86297; 10.01.2010