Почему основные веб-сайты не проходят проверку W3C правильно?

В попытке понять, может ли валидация W3C помочь улучшить рендеринг DOM или если это всего лишь стандарт для кодирования HTML, я попытался проверить основные веб-сайты, но все они сбой с некоторыми ошибками.

Вот типичные примеры:

  • google.com 36 Ошибок, 2 предупреждения (ов)

  • facebook.com 42 Ошибки

  • youtube.com 91 Ошибки, 3 предупреждения (ов)

  • yahoo.com 212 Ошибок, 8 предупреждений

  • amazon.com 510 Ошибки, 138 предупреждений

Когда на крупных веб-сайтах не хватает времени для проверки W3C, нужно ли тратить время на это для небольших и средних веб-сайтов?

Ответ 1

Валидация - это больная проблема. В XHTML-дни (pre html5 doctype ubiquity) было почти невозможно проверить сложный макет против строгого DTD, опубликованного W3C. Я думаю, вы могли бы указать пальцем на IE, чтобы быть главным виновником, так как для этого требовалось много совершенно нестандартных хаков, чтобы заставить себя вести себя разумным кросс-браузерным способом, а IE был и является самым популярным браузером на планете, Считается, что MS, вместо того, чтобы следовать указаниям, представленным двигателями webkit и gecko, решили добавить еще больше расширений браузера и взломать грязные воды, вместо того, чтобы просто придерживаться "стандартов".

Мы все знаем, что если время не было проблемой, мы, как разработчики, могли создавать страницы, которые подтверждали бы, но на практике, как указывали другие, валидация становится полезным инструментом, а не целью дефакто. Если клиент требует проверки, то есть затраты, и это должно быть объяснено. Управление ожиданиями здесь очень важно.

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

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

Ответ 2

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

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

Ответ 3

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