Почему некоторые крупные сайты используют недопустимый HTML? - PullRequest
29 голосов
/ 08 января 2010

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

Мне интересно их причины. У HTML есть простые правила, и просто ошеломляет, что они, кажется, не следуют этим правилам. Или они используют программы, которые просто выплевывают код?

Ответы [ 6 ]

110 голосов
/ 08 января 2010

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

Несколько моментов:

Во-первых, люди намекают на то, что причины экономии трафика Google являются финансовыми.Навряд ли.Даже несколько терабайт в день, сохраненных на странице результатов поиска Google, - это капля в море по сравнению с суммой всех их свойств: Youtube, Blogger, Maps, Gmail и т. Д. Гораздо более вероятно, что Google захочет страницу результатов поиска,в частности, загружать как можно быстрее на как можно большее количество устройств.Да, байты имеют значение, когда страница загружается миллиард раз в день, но байты также имеют значение, когда ваш пользователь использует спутниковый телефон в Сахаре и пытается получить 1 кбит / с.

Два, есть разница междукодифицированные стандарты XHTML и тому подобное, и де-факто стандарт того, что действительно работает в каждом браузере, созданном с 1994 года. Здесь масштаб Google имеет значение, потому что, где большинство веб-разработчиков рады игнорировать любой проблемный браузер, на долю которого приходится менее 0,1% их пользователей, для Google, что 0,1%, возможно, полмиллиона человек.Они имеют значение.Так что их страница результатов поиска должна работать на IE 5.5.По этой причине они по-прежнему используют таблицы для разметки на многих страницах с высоким значением - это все еще разметка, которая «просто работает» в наибольшем количестве браузеров.

В качестве упражнения, будучи стажером в Google, янаписал полностью совместимую XHTML / CSS-версию страницы результатов поиска Google и показал ее.В конце концов, возник вопрос - почему мы обслуживаем такой смешной HTML?Разве мы не должны вести сообщество веб-разработчиков к стандартам?Ответ, который я получил, был в значительной степени вторым пунктом выше.Google ДОЛЖЕН следовать стандарту - не стандартам веб-утопии, которые не будут хорошими, а стандарту "все должно работать" абсолютно везде.

10 голосов
/ 08 января 2010

У Google есть веская причина для написания плохого HTML & ndash; каждый символ, который они удаляют со страницы поиска, экономит им, вероятно, гигабайты пропускной способности в день.

6 голосов
/ 08 января 2010

Как уже говорилось ранее , Google делает это по соображениям пропускной способности.

Что касается банков и других корпоративных сайтов, то для этого может быть несколько причин.

  1. CMS выкладывает неверный HTML
  2. Сновидец, достаточно сказано.
  3. Склонны использовать коммерческие компоненты пользовательского интерфейса, которые были разработаны для работы даже в древних браузерах, поэтому они ошибаются.
  4. Нет акцента на хорошие практики HTML и Javascript. Многие из них, как правило, являются магазинами Java или .NET без хороших разработчиков пользовательского интерфейса.
  5. Плохо спроектированные пользовательские элементы управления .NET и теги JSTL.
4 голосов
/ 08 января 2010

Для нескольких сайтов, таких как Google, наличие идеального кода не так уж важно.

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

Так что, если они могут быть уверены, что их страница будет правильно отображаться, они без колебаний настроят свой HTML.

2 голосов
2 голосов
/ 08 января 2010

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

...