Стоит ли писать разметку XHTML Strict? - PullRequest
5 голосов
/ 08 июля 2011

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

И многие веб-сайты даже не проходят надлежащую проверку в Transitional.Я очень стараюсь придерживаться строгих стандартов, полагая, что неправильная разметка приводит к большим трудностям при отладке, когда что-то не работает.Тем не менее, это большая работа по написанию 100% правильного кода.

Мне интересно, стоит ли прилагать усилия для изучения и написания строгой XHTML-совместимой разметки.

РЕДАКТИРОВАТЬ: И если это так, почему больше людей не делают это?Мне кажется довольно редким наткнуться на правильную XHTML-строгую веб-страницу.

Ответы [ 4 ]

4 голосов
/ 08 июля 2011

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

Действительно, если вы хотите писать в строгом режиме, просто напишите свою страницу, а затем пропустите ее через валидатор. Он расскажет вам, что не так и что вам нужно исправить. Вы узнаете, что вы должны или не должны делать. Глядя на официальную спецификацию , можно очень сильно помочь.

С другой стороны, я бы также рекомендовал перейти на HTML5. HTML5 не имеет таких типов, как "строгий" и "переходный". Если вы хотите писать по более строгим правилам, вы можете. Если вы хотите писать по правилам проигравшего, вы можете. Я также чувствую, что вокруг все чище, и мне нравится писать HTML5 гораздо больше, чем XHTML. Опять же, запуск вашего сайта через валидатор даст вам представление о том, что вы делаете, что вы делаете неправильно.

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

Итак, я рекомендую идти в этом направлении.

4 голосов
/ 08 июля 2011

Краткий ответ: нет.

Я никогда не считал, что Strict XHTML стоит усилий.

Первая проблема с ним заключается в том, что он устарел в некоторых функциях HTML, которые на самом деле былиполезный, и для которого не было хороших альтернативных решений.Это была особая проблема, если вам требовалась обратная совместимость со старыми браузерами (что, конечно, делают все).Спецификация Transisional не поддерживает эти функции, поэтому люди используют ее вместо строгой.

Функции, которые были объявлены устаревшими, включают тег <center> (альтернативы CSS не были совместимы с браузерами в то время) иатрибут target для тега <a> (который позволяет открывать ссылку в новом окне, вкладке или фрейме; другого способа по-прежнему нет, никто не прекратил его использовать, а HTML5 имеетповторно представил это).В том же духе было довольно много других функций, но это было давно, и я не могу вспомнить их все.

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

Хорошо позаботиться о том, чтобы ваша разметка была действительной - на самом деле, это очень важно, независимо от того, на каком (x) диалекте HTML вы пишете - но выследует проверить, что на этапе разработки , не позволяя браузеру конечного пользователя выполнить вашу проверку за вас.Если вы хороший разработчик, вы должны знать, что ваш код хорош, прежде чем он станет ближе к пользователю.И на самом деле, если это приводит к тому, что ваш сайт полностью выходит из строя перед конечным пользователем, то это катастрофа.С поврежденным HTML, даже если он сильно поврежден, пользователь обычно может перемещаться и читать сайт в достаточной степени, чтобы найти контактную информацию, чтобы вы могли сообщить об ошибке.В браузере, который придерживается строгого XHTML-типа документа, небольшая ошибка разметки может привести к тому, что на вашем сайте не появится ничего, кроме стандартного сообщения об ошибке браузера.Это очень и очень плохой пользовательский интерфейс.

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

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

1 голос
/ 08 июля 2011

номер

Я уже несколько лет пишу строгую разметку, и я не вижу заметных преимуществ.

Я бы предпочел использовать HTML5 <!DOCTYPE html> просто потому, что он более чистый и хорошо работает в IE.

0 голосов
/ 08 июля 2011

Я бы сказал, Да (иш).

Как правило, выбор строгой версии указывает на то, каких стандартов вы должны придерживаться в будущем.то есть устаревшие атрибуты в строгом xhtml (но разрешенные в переходном), не появятся в более поздней версии стандарта.

Теперь мое эмпирическое правило немного нарушено, с переходом от xhmtl к html5.Поскольку у html5 нет строгой версии, но я бы сказал, что нужно использовать html5 (или даже xhtml5), а не xhtml строгий.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...