2009-07-13 3 views
5

Еще одна глава из «аргументов между собой и другой старший разработчик серии»: PКодирование для IE против кодирования для стандартов W3C

Моя позиция в том, что при выполнении веб-разработки, код в браузере должна быть написана в первую очередь для придерживайтесь веб-стандартов W3C, хотя Internet Exploder имеет большую долю рынка (где-то между 51% и 79% в зависимости от того, кто выполняет отслеживание). Мои рассуждения:

  • Стандарты фиксируются и все разработчики браузеров движутся в направлении, как минимум, 100% ошибка бесплатную поддержку для всех установленных норм. Поэтому код должен быть написан и протестирован вокруг Firefox/Chrome/Safari, которые намного ближе к надлежащей поддержке стандартов, чем IE8, тогда условные теги должны использоваться в IE, чтобы обойти его ошибки. Это особенно важно, поскольку вы можете использовать условные теги для работы с ошибками IE, но если вы попытаетесь выполнить обратный код, гораздо труднее написать хаки, чтобы заставить Firefox/Safari/etc правильно отображать закодированные HTML/CSS ,

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

  • Кодирование чего-то сломанного, чтобы поддержать большую долю на рынке, а затем «разваливать» его на меньшую долю на рынке, если у вас есть время, похоже на небрежный подход к работе и предполагает, что вы считаете, что 20% доли рынка что я считаю очень далеким от истины.

Мой cо-разработчик утверждает:

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

  • Кодирование для поддержки доли меньшинства в размере ~ 20% не стоит усилий, пока страница будет отображаться в этих браузерах таким образом, который еще можно использовать.

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

  • Это боль, которую приходится разрабатывать в Firefox, когда он предпочитает IE8 в любом случае.

Я один ответственный и, конечно, я могу сказать, «это, как она идет», но я ненавижу просто быть нацистом и сказать «мой путь или шоссе»; Я думаю, что лучше, если бы другие поняли, почему мы делаем что-то определенным образом, так что мы согласны с тем, что мы продолжаем, и поэтому соглашения, за которыми мы следуем, застряли, потому что причина, по которой они стоят, оценивается, а не жалобно последовало.

Могу ли я получить некоторый вклад в этот аргумент?

+6

Вы должны сделать это сообщество wiki, поскольку оно основано на мнениях. – MitMaro

+0

Теперь это вики сообщества. –

+0

Единственное решение лежит в биографии на моей странице профиля. – 2010-12-05 23:23:41

ответ

11

Разработайте стандарты W3C и сделайте их хорошо выглядящими в IE. Они не являются взаимоисключающими.

+1

Just W3C все-в-одном. Если у нас нет стандартов, что мы получили? –

+7

@Aiden: Рабочие веб-страницы? – Will

+0

@Will - «работает», в каком браузере? –

1

Разработать стандарты W3C и сделать их хорошо выглядящими в IE. Они не являются взаимоисключающими.

Иногда это так. Когда они появляются, разработка стандартов W3C обычно является разумным выбором. Большая проблема, конечно, развивается для нескольких версий IE; установка жесткого нижнего предела в 7, вероятно, хорошая идея, но это зависит от редактора.

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

0

Я всегда поручаю моей команде проектировать с Firefox (см. «Стандарты W3C») и только позже заполнять причудливые промежутки, в которых находится IE. Я не мог согласиться с вашей точкой зрения больше, потому что это имеет такой смысл.

MS предположительно пытается сделать IE более совместимым с навсегда, но они по-прежнему остаются длинными ... тогда как другие браузеры, такие как Firefox и Chrome, имеют преимущество в обучении ошибкам MS. Поскольку значительная часть веб-пользователей по-прежнему использует IE 6, вам всегда придется добавлять специальные условные проверки для удовлетворения этих «недостающих ссылок».

Я не вижу, как это боль для разработки для Firefox, учитывая удивительные дополнения, такие как FireBug и Web Developer.

+0

-1 для использования «M $» –

+0

@mgroves: Я тоже не поклонник фразы «M $», но это не отменяет его ответа. Хотя, я дам вам, его ответ довольно вежливый. – DevinB

+0

(-1) Если ваша команда начинается с Firefox, у них будет чертовски время заставить ее работать в другом месте. У Firefox есть хорошие инструменты, но они поощряют вас * полагаться * на эти инструменты, которые притупляют вашу способность работать без них. Если вы начнете с работы в IE, вы обнаружите, что перенос в FF проще из-за доступных инструментов, чтобы узнать, что происходит неправильно. Если вы начнете с FF, вам придется взломать и слэш, чтобы заставить его работать в IE. Если вы планируете отчуждать свою аудиторию IE, ваше решение на сегодняшний день является самым простым. – DevinB

1

У меня нет никакой любви к W3C, так как «стандарты», которые возникли оттуда, довольно ужасны и причина, по которой каждый делает все по-другому.

IE поддерживает conditional CSS statements, что позволяет настраивать приемы IE CSS, которые работают в большинстве браузеров.

Поэтому я считаю, что лучше всего написать HTML, который выглядит хорошо и работает как ожидалось (стандарты schmandards), и когда вам приходится делать что-то некрасивое, чтобы заставить его работать в IE, используйте условный CSS ,


Уточнение на моем циничном мнении W3C: Большое. Мяч. Из. Грязь.

+1

+1 за то, что он дал жесткий (и, самое главное, правильный) ответ. – Welbog

+0

Как вы выясните, что выглядит хорошо, если нет стандартов для определения того, как это должно выглядеть? – jcollum

+0

@jcollum: Как вы выясните, что выглядит хорошо, если нет браузеров для отображения результата? – Welbog

2

Я не уверен, в какой версии IE вы действительно спорите, но это digg blog post иллюстрирует, что более половины пользователей IE6 не используют IE6 по выбору.

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

1

В действительности, бизнес должен удовлетворять потребности пользователей. Идеологии недостаточно. Разработайте стандарты, а затем запустите его в IE. Комментируйте код и объясните, где введены хаки. Если вы говорите об IE8, это не так уж плохо. Если вам нужно поддерживать IE7 или даже 6, то у вас будет больше работы.

4

Знайте свою аудиторию: Не волнует ли ваш сайт соответствие стандартам? Наверное, нет, если вы не пишете сайт для фанатиков веб-разработчиков. Скорее всего, им это не понравится или даже не узнает, что такое W3C.

Есть ли у вашей аудитории более высокая тенденция выбора конкретного браузера? Имейте в виду, что не все сайты получают одинаковое распространение браузеров. Сайты Tech получают меньше IE, чем общие сайты.

Будьте практичны: Большинство сайтов получают большинство своих хитов от IE. В частности, IE 6 и 7. Он игнорирует реальность, чтобы игнорировать причуды IE. Вы получите много пользователей, жалующихся на то, как ваш сайт не работает, если вы не тратите время, чтобы заставить его работать в IE 6 и 7. IE 6 по-прежнему является большим браузером, который используется большинством предприятий, ориентированных на Microsoft.

Будьте реалистичны: Стандарт-совместимый HTML не очень практичен, кроме как обратиться к фанатикам. В идеале, все браузеры реализуют стандарт. Но они этого не делают. Нереально реализовать стандарт, который никто не реализует полностью.

В нижней строке представлен сайт, который работает во всех браузерах IE6 и выше. Если вы должны изящно отказываться от старых браузеров, сделайте это. Но не игнорируют их. Они существуют, и пользователи не будут использовать сайты, которые не работают. Часто их предприятиям поручено не использовать разные браузеры, поэтому предлагая им обновление не вариант.

+0

Ни в коем случае я не выступал против их игнорирования, скорее я предлагал, чтобы разработать верхний уровень, непрерывный стандарт, затем предоставить исправления для каждой последующей версии IE по дереву, работая над каждым набором недостатков отдельно. –

+1

Я думаю, вы должны начать с подхода, чтобы он выглядел правильно для всех основных браузеров. Не «возвращайся позже» или поставь условные хаки/код, просто сделай это с самого начала. Легче сказать, чем сделать, но это можно сделать. –

+0

Согласен, однако иногда требуется условный код, чтобы он выглядел правильно. Эти два варианта часто являются взаимоисключающими. –

1

Код браузеру, имеющему некоторую долю на рынке, и наиболее точно соответствует критерию ACID. Обходитесь для других браузеров и решайте, какие браузеры вы не будете беспокоиться.

Для меня, в это время, что означает:

Код для светлячок, работать вокруг IE, убедитесь, что он работает так же, как в Chrome и Safari, и игнорировать все остальное.

+0

точно мои процессы (FF, tweak в IE, проверьте Chrome и Safari). Иногда я также проверяю Opera. Я хотел бы добавить Konqueror в микс, но в большинстве случаев он слишком ограничен, поэтому он делает хороший «деградировать изящно» check – Javier

+0

Chrome, IE, затем FF (я ненавижу ff fanbois). И о чем это говорит Сафари? – Will

-1

Его аргумент страдает одним серьезным недостатком: Какую версию IE вы настраиваете?

Сайт может отлично выглядеть в IE6 и ужасно сосать в IE7 и 8. Или отлично выглядите в IE6 и 7, но ужасно сосать в режиме рендеринга IE8 по умолчанию (более стандартно).

Поддержка IE6 падает; Использование IE7 превзошло использование IE6 некоторое время назад, и IE8 медленно набирает обороты.

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

+1

За исключением того, что «8-летний» браузер по-прежнему имеет 20% доли рынка. Вы просто не можете просто игнорировать это. – cdm9002

+0

Да, но как только вы создаете для других 80%, тогда вы возвращаетесь и исправляете его для работы в последних 20%. – Powerlord

1

В приведенных выше аргументах есть несколько интересных утверждений. Поставщики не заботятся о стандартах. Будущие проверки на соответствие требованиям стандартов. Non-IE представляет ~ 20% доли рынка. Если бы были какие-то эмпирические доказательства или против них, это могло бы помочь.

Самое главное в моих глазах, что у вас есть утверждение, что это «вы можете использовать условные теги для работы с ошибками IE, но если вы попытаетесь скомпоновать код, гораздо труднее написать хаки, чтобы заставить Firefox/Safari/etc для корректного отображения кодированного кода HTML/CSS ». Это утверждение о недостатке симметрии неинтуитивно для моих глаз, но если истина является довольно сильным аргументом.

Лично, если кто-то действительно говорил «примерно правильно, это нормально» и «не волнуйтесь ... точно», тогда мне было бы трудно принять эти аргументы серьезно.

Почему развивающаяся в/для Firefox боль?

+0

«гораздо сложнее написать хаки, чтобы заставить Firefox/Safari/etc правильно отображать закодированный HTML/CSS». – Javier

3

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

Основная проблема, которую я видел это лаковой: «X»

  • Browser компании делает браузеры отказоустойчивой и попытки отображения страниц, которые плохо образованы. Они также отклоняются от стандартов по пути либо случайно, либо в попытке создать свой собственный новый стандарт.
  • Неопытный веб-разработчик использует браузер «X», чтобы проверить их дизайн как , они идут вместе, допуская ошибки в , их разметку, чтобы не заметить.
  • Браузерная компания 'X' теперь находится в ловушке позиции либо разрыва существующих сайтов, либо известных дефектов в новых версиях своего браузера.

Не участвуй в этом цикле.

Смежные вопросы