Почему некоторые крупные сайты используют недопустимый HTML?

<script type="text/javascript">
window.addEventListener("beforeunload", function (e) {

  var confirmationMessage = "Are you sure you want to leave this page without placing the order ?";
  (e || window.event).returnValue = confirmationMessage;
  return confirmationMessage;

});
</script>

Пожалуйста, попробуйте этот код, это отлично работает для меня. Это настраиваемое сообщение поступает в браузер Chrome, но в Mozilla это сообщение не отображается.

29
задан Daniel Vassallo 10 January 2010 в 10:21
поделиться

6 ответов

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

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

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

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

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

110
ответ дан 28 November 2019 в 00:36
поделиться

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

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

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

4
ответ дан 28 November 2019 в 00:36
поделиться

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

10
ответ дан 28 November 2019 в 00:36
поделиться

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

2
ответ дан 28 November 2019 в 00:36
поделиться

Как и обсуждалось ранее, google делает это по причинам, связанным с пропускной способностью.

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

  1. CMS выплёвывает недействительный HTML
  2. Dreamweaver, достаточно сказать.
  3. Обычно используются коммерческие компоненты пользовательского интерфейса, которые были разработаны для работы даже на старых браузерах, поэтому они ошибаются с осторожностью.
  4. Никакого акцента на хороших практиках HTML и Javascript. Многие из них, как правило, являются Java или .NET магазинами без хороших разработчиков пользовательского интерфейса.
  5. Плохо продуманные элементы управления пользователя .NET и теги JSTL.
6
ответ дан 28 November 2019 в 00:36
поделиться