Flash Ripper RSS Readers

В войне браузеров смертельный урон нанесен веб-стандартам

На главном сайте веб-дизайнеров A List Apart появилась статья о том, что IE8 будет поддерживать специальный мета-тег X-UA-Compatible для корректного рендеринга страниц, созданных ранее для браузеров типа IE6 / IE7. Вот так вы говорите, что сайт создан для IE7:

<meta http-equiv="X-UA-Compatible" content="IE=7" />

Видя такой код в начале html-документа, IE8 будет обрабатывать доку особым образом — в режиме работы IE7.

Это очень разумный ход, друзья. Молодцы все-таки эти парни из Майкрософт. Теперь веб-дизайнеры, вместо того, чтобы переделывать свои старые сайты из-за их несовместимости с новым браузером могут просто вставить одну строчку кода — и сайт будет работать, как ни в чем не бывало. Друзья! Это долгожданный свет в конце интернета, если у интернета есть конец. Я подготовил по этому поводу краткую утреннюю речь.

Обращение корпорации Microsoft к веб-дизайнерам

Дорогие наши веб-дизайнеры, AJAX-разработчики и все, кто работает с HTML! Наша компания, Microsoft совсем скоро выпускает браузер IE8, который таки умеет рендерить HTML. Есть лишь одна маленькая проблемка: мы не знаем, как будут отображаться в нем ваши сайты, сделанные под предыдущие версии IE. Точнее, мы знаем, но вам лучше этого не видеть, а чтобы вы этого и не видели, нужно как можно скорее вставить во все ваши сайты такой специальный мета-тег "X-UA-Compatible", который будет говорить: "страница создана для IE7". И наш славный IE8 сможет прочесть это мета-тэг, и сможет отрендерить страницу своим встроенным IE7 (да, в каждом блистательном IE8 есть частичка славного IE7).

В общем-то, это наша проблема здесь, в Microsoft. Мы что-то слышали об обратной совместимости ПО, но там было много букв. И мы решили, что вас больше, вы умнее, и можете лучше нас решать такие проблемы. Извините. Мы сдаемся. Все свободны.

А, не забудьте обновить код во всех своих сайтах. Да здравствуют веб-стандарты!

Попытка спокойно разобраться с X-UA-Compatible

Cмущает не столько само нововведение, сколько явный прогиб главного сайта по веб-стандартам в сторону IE. Об этом в тексте сказано много раз фразами типа "IE will support", "our group decided to recommend for IE8, and we hope to see it implemented in other browsers". Друзья, это попытка провалить веб-стандарты.

С другой стороны, это очень крутое нововведение: сейчас верстальщикам приходится не только применять html-хаки для преодоления несовместимости браузеров, но и обновлять хаки на старых страницах (я скажу еще раз, что именно поэтому ненавижу хаки во веки веков, это все продажа мозга в розницу). Сейчас же веб-дизайнерам предлагают "легкое" решение проблемы несовместимости разных версий IE: набор старых хаков, упакованных в одну строку кода. Только вот проблему эту создавали не веб-дизайнеры. И решать ее дожен не каждый дизайнер, а одна компания — производитель кривых браузеров.

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

Даешь сиюминутную выгоду. Василий Пупкин, торжествуй, и никогда не устанавливай правильные браузеры.

Пока писал, слушал: 1. Net Pistols - God Save The Microsoft, 2. Net Pistols - Anarchy in The Web.

Update 1: W3C опубликовала черновик HTML 5.
Update 2: создал тему "Microsoft пытается подмять веб-стандарты под IE8" на Хабре.
Update 3: Джон 'jQuery' Резиг по поводу X-UA-Compatible.
Update 4: Константин Кичинский подсказывает, что по умолчанию может использоваться режим совместимости с IE7, т.е. режим IE8 нужно "включать" явно (подробности в его комментарии).

Писал Rost, 24 Январь 2008 10:03

Найдены баги:

Странный конечно подход к обратной совместимости. На мой взгляд, если уж добавлять специальную директиву, так для указания, что сайт следует рендерить именно новым движком IE8. Тогда по умолчанию все будет работать как раньше на движке IE7, а если разработчик в _новом_ сайте чего-то такого навернет, что умеет только IE8, тут уж он и укажет это.

Fix - 24 Январь 2008 11:31

Ааааа, Фикс, старина, как рад тебя видеть!

Подстава в том, что про значение по умолчанию в статье автор то ли забыл, то ли не захотел написать.

Будем верить в лучшее! В смысле, в лучшее значение по умолчанию.

Рост - 24 Январь 2008 11:34

Net Pistols или .Net Pistols? :)

Constantiner - 24 Январь 2008 12:19

Насколько я смог заметить, автор в статье приводит как раз примеры того, как указать, что нужно для рендеринга использовать именно IE8.

В блоге разработчиков (http://blogs.msdn.com/ie/archive/2008/01/21/compatibility-and-ie8.aspx) на этот счет сказано следующее:

# “Quirks mode” remains the same, and compatible with current content.
# “Standards mode” remains the same as IE7, and compatible with current content.
# If you (the page developer) really want the best standards support IE8 can give, you can get it by inserting a simple element.

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

К слову, автор статьи входит в группу WaSP-Microsoft Task Force, которая по своему предназначению как раз занимается тем, что дает пинки MS, чтобы они шевелились с поддержкой стандартов.

Константин Кичинский - 24 Январь 2008 12:25

Это просто дурость.
Фактически новый ИЕ будет иметь два движка - новый и старый. И, боюсь, что это работать корректно не будет в связи с разными версиями стандартов.
Ресиг прав в том, что начнётся такая чехарда и с DOM и JS и со всем остальным, что мама не горюй.

injun #576871 - 24 Январь 2008 13:23

Друзья, оставим ведьму Диану с нами, или пометим ее визит как вторжение?

Кстати, Диана, не желаете ли приобщиться к Тайной Ложе Открытого Галактического Кода? Недорого, можно бартером: снимите с интернета проклятие Васи Пупкена, а мы вас запишем.

Рост - 24 Январь 2008 13:43

Давайте оставим Диану, ибо в нащ век без шаманства не обойтись

ir73 - 24 Январь 2008 14:25

Гы гы гы, очередной развод MS для всего человечества… Канечна шча найдется пачка-армия фэнов, которая на себе рубашки будет рвать и маму продаст за MS!
Неужели не ясно, откуда такое решение? FF, Opera или Safari делают “нечто” аналогичное?
Да и ваще, что за х*евое решение, скоро тэги начнем прописывать под IE8 :)))
1. Неужели шча все ламануцца вставлять этот чудо мета тэг и обновлять себе браузер???
2. Сайты как верстали, так и будут верстать под разные версии IE (5/6/7 теперь и 8), под FF, Opera и Safari, так что это ноу-хау чуда-юда абсолютна безпантовое!
Ну укажите вы что весь сайт под IE8, все равно нужна будет верстать под IE5/6/7, укажите вы IE7 – IE5/6/8… как ни крути – жопа как была, так и остается, только сейчас в ней появилась еще одна дырка! Еще появится пару хаков для IE8, потом под IE9, 10, 11 и т д… Зато у многих людей появится смысл жизни – заточка шаблонов под IE!
Вот если бы исчезли с лица земли предыдущие версии IE, желательно с новой, тогда – шчасце всему человечеству!

k4d - 24 Январь 2008 15:29

По иронии судьбы на данный момент броузер IE наиболее полно поддерживает стандарты W3C в отличии от остальных броузеров.
В сети много тестов и результатов тестов по этой теме.

Gaploid - 24 Январь 2008 15:32

Вот если бы исчезли с лица земли предыдущие версии IE, желательно с новой, тогда – шчасце всему человечеству!

k4d, а что, если их не убивать, а ...проапгрейдить? Майкрософт ведь может все своими апгрейдами. Взять и подтянуть IE7 до уровня IE8 - и все дела. Где я ошибаюсь?

Ладно, Диану оставим, если ответит.

Рост - 24 Январь 2008 15:36

Рост, это называется следующая версия продукта, что сейчас и собирается сделать MS.
Потом она будет апрейдить 8, 9, 10 и т д, тока толку от этого???

Safari например более толковый браузер чем IE10, не то что 7 или 8!
IE Suck!

k4d - 24 Январь 2008 15:44

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

Вообщем как говорил Шариков в "Собачем сердце" — "Да что тут думать, нужно взять все и поделить!!!" — на 100 (или болльше) и оставить один рендеринг Опенсоьрсный (покрайней мере для винды) и пусть каждый себе пишет интерфейс какой ему хочется и продает. И пусть все Оперы ИЕ и Фаерфоксы скинутся и купят мне пива, много - что б не умничал!

Ushan - 24 Январь 2008 17:27

Эй, а что, старый добрый метод переключения браузера тэгом !DOCTYPE в loose.dtd больше не работает?

flaMaster - 24 Январь 2008 18:48

а не проще ли товарищам из МС залатать ИЕ так, чтобы он перестал реагировать на хаки?
тогда он начнет видет код, как видят все нормальные браузеры. а раз так, то пусть и обрабаывает по стандартам.

таким образом не придется обновлять тучу сайтом для новой совместимости

.mariner - 24 Январь 2008 21:19

а вот сделать тег для восьмерки, мол "парси как лиса", "парси как опера" не могут!
или отключить распознавание старых хаков ie5/6/7 - парсить по стандарту и все - тож не могут!
+учитывая что "любая сложная система есть результат эволюции сложной системы" и зная что ie8 умеет парсить как младшие братья уж по-крайней мере становится понятно, откуда взялся "абсолютно новый" движок ie8 и КАКОЙ на самом деле там внутри зашит код

rr-m - 24 Январь 2008 21:30

Нововведение конечно хорошее, майкрам респект. Что ни говори, но на профессионализме они обскакивают и оперу и мозиллу налегке.

Aшветия - 25 Январь 2008 3:27

>> Эй, а что, старый добрый метод переключения браузера тэгом !DOCTYPE в loose.dtd больше не работает?

Возможно, работает, но суть вот в чем... Разработчики аппелируют к тому, что в свое время была наделана куча сайтов под IE6, в которых вебдевелоперы ли сами, используемое ли ПО, копипейст ли... в общем что-то из этого проставляло в этом самом DOCTYPE standard mode, даже если по факту это было не так, то есть были отклонения. В итоге, когда выпустили IE7, который был ближе к стандартам и по умолчанию использовал обновленный движок -- куча этих сайтов с standard mode полетела.

Заодно хочу отметить, что MS в отличие от Firefox и Opera, берет на себя обязательства максимальной совместимости со всем своим прошлым наследнием (которого у этих браузеров нет -- и слава Богу). И здесь вопрос не в том, почему когда-то давно IE5-6 отклонялись от стандартов, здесь вопрос в том, как обеспечить совместимость. И сказать, мол с такого-то числа мы выпускаем IE8, который будет все рендерить по стандартам, а если вы делали что-то, что работало в IE6, но оно не по стандартам -- извольте переделать -- это не выход. Есть куча старых сайтов, которые не поддерживаются или не обновляются, но на них тоже может быть важная информация, есть куча всяких "неизменяемых" сайтов, записанных к примеру на болванки, которые физически нельзя привести к стандартам, но они тоже должны работать.

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

Константин Кичинский - 25 Январь 2008 5:48

Еще как дополнение в тему WaSP -- официальная позиция на этот счет http://www.webstandards.org/2008/01/22/microsofts-version-targeting-proposal/

И еще одно мнение на этот счет -- уже с ALA http://alistapart.com/articles/fromswitchestotargets

Константин Кичинский - 25 Январь 2008 8:50

Как тут у вас интересно:)
Я вот лично считаю что правильно сделали, если по умолчанию рендер идет как для ИЕ7, потому что всетаки действительно оромное количество сайтов сверстано с хаками под старые ИЕ. Да, то что майкрософт козлы, положиле на стандарты давно и надолго это конечно факт.
И непонятно действительно почему бы не сделать так чтобы ИЕ8 спокойно рендерил как лиса или опера, тогда бы и тегов не надо было. Лиса и опера же нормально рендерят эти старые сайты по всем интернетам.

Shagrat - 25 Январь 2008 10:47

ХУ А компатибл - вперед.
Ху а НОТ компатибл - в резервацию.

Murejib - 25 Январь 2008 16:18

Safari рулит ;)

etc - 25 Январь 2008 16:26

Я во флеше в DocumentClass буду вставлять:
static public const X_UA_Compatible = "IE=7"...

З.Ы.: Safari и Opera проходят тест ACID 2 на 100%. Firefox и IE7 в жопе.

a_[w] - 27 Январь 2008 2:33

mozila ff rulit

ext - 28 Январь 2008 18:06

Наша компания реализует путевки в страны скандинавии. Незабываемый отдых на горнолыжных курортах.

круиз скандинавия

scanditourru - 29 Январь 2008 20:29

Ноутбуки

noteliferu - 7 Март 2008 5:14



Это запись из категории 'Flash and html'. 10 еще cвежих:

Архивы по категориям:

3D-18, Adobe AIR-30, Animation-1, Apache Ant-1, Architecture-1, ARP-1, Art-25, Articles-26, AS3-52, Books-7, Business-3, Cairngorm-2, CI-1, Classes-10, Coding-30, Community-113, Components-19, Contests-28, Cool-Job-5, Debug-18, Design-26, Development-84, EMO-1, Events-13, Extensions-2, FAQ-8, FDS-1, Flash and html-5, Flash Player-35, Flash Updates-8, Flash-scene-1, flash10-4, FlashLite-2, Flex-30, Flex 2-80, Flickr-1, FMS-1, FPUG-46, frameworks-1, Games-11, Good Job!-35, HaXe-14, Health-2, Humor-10, Ideas-13, JavaScript-1, Job-26, JSFL-8, Links-2, Linux-1, Maps-1, Math-8, Money-11, MXML-1, Open Source-15, Optimization-2, Patterns-2, Personalities-27, Politics-1, Preloading-3, Productivity-9, PureMVC-10, Pv3d-1, Rafpug-4, Red5-3, Remoting-11, Resources-21, Ruby-6, SAAS-1, Security-11, SEO-8, Silverlight-5, Sound-3, Strategy-120, Tamarin-1, Tools-113, Training-2, Trash-8, URAFPUG-13, Urgent-1, Usability-6, Video-6, VoIP-5, Wallop-1, Wishlist-2, Архив всех записей (большой)

За последние месяцы:

Июл 2008: Международная встреча разработчиков URAFPUG завершена, URAFPUG - трансляция студии Flex-фреймворка Mate, весь Июл

Июн 2008: Попытка предварительных выводов о встрече аниматоров, Онлайн трансляция встречи аниматоров в Донецке, весь Июн

Май 2008: Если 3D, то по-взрослому: официальный запрос в Adobe по поводу контроля над мип-маппингом. Нужна ваша поддержка!, В этом году «Russian Flash Awards» пройдет в «космическом стиле», весь Май

Апр 2008: Программирование под флэш платформу. Cтатья (местами спорная), Advanced Flash Components бесплатно раздает все свои AS2-компоненты, весь Апр

Мар 2008: Зарплаты программистов в 2007 году, FlashPhone как технология года? Технология года? В Рунете?, весь Мар

Фев 2008: ЙА ФПУГ — регистрация на первую встречу UAFPUG продолжается, Закулисы Flex и секрет успеха опенсорс-проекта, весь Фев





Примечания:
Статус документа
: в процессе
   2002-2007 Производство: Рост Прибыли · О проекте · Подписка на новости (RSS)