2008-08-06 10 views
16

При разработке нового веб-приложения, на какую версию html вы должны нацелиться?Выбор HTML-версии

EDIT:

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

Я отметил первый переходный пост XHTML 1.0 как «правильный ответ», но твердо верю, что все ответы даны в тот момент, когда они одинаково действительны.

ответ

7

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

+1

Не знаете, как уточненный есть, но если это все-таки верно для Firefox, Переход XHTML 1.0 переместит Firefox в режим «Почти стандарты» вместо режима «Стандартные стандарты». – Shadow2531 2008-10-11 13:31:40

+0

Нет никакой веской причины для XHTML над HTML. – Mark 2010-11-18 22:41:11

1

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

0

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

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

Transitional не такой строгий, как строгий, что делает его относительно легким в работе, по сравнению со строгим, что часто может быть PITA. Comparison between Transistional and Strict

1.0 является «более совместимым», чем 1.1 и 1.1, по-видимому, все еще находится под каким-то развитием.

2

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

25

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

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

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

в ответ на Michael Stum:

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

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

0

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

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

3

@ Mike:

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

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

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

1

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

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

3

Там будут некоторые compellingwarnings об использовании XHTML, в первую очередь центрирования вокруг того, что мим тип такого документа должен быть отправлен как:

Content-type: application/xhtml+xml

Тем не менее IE 6 и 7 Дон» т поддержку этого, а затем веб-сайты должны отправить его как:

Content-type: text/html

К сожалению, этот метод considered harmful.

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

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

+1

«Мне нравится синтаксис немного лучше, потому что он заставляет меня быть очень явным, когда теги заканчиваются и т. Д.» ну, в большинстве случаев, ничто не заставляет вас это делать, и вы всегда можете написать HTML, который на 99% «xml valid» в любом случае. – 2008-10-11 13:02:46

8

Transitional ароматы XHTML и HTML устарели. Они предназначались только для для старых пользовательских агентов, которые не поддерживают CSS. См. explanation in the 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 Строгий:

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

, но по состоянию на 2016 год, есть только one version of HTML, что имеет значение.

<!DOCTYPE html> 
1

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

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

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

0

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

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

1

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

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

Важно: Avoid being called a bozo when producing XML