#html #css #graceful-degradation
#HTML #css #изящная деградация
Вопрос:
Только что прочитал интересную статью Николаса К. Закаса из yahoo: Что такое веб-браузер?
Как наилучшим образом сбалансировать внедрение новых технологий, таких как HTML5 и CSS3, сохраняя при этом поддержку браузеров, подобных i.e 6, является ли это практичным подходом к повседневной веб-разработке, где необходимо соблюдать сроки?
Ответ №1:
Я думаю, это действительно зависит от типа сайта, который вы создаете, а также от типа предполагаемых конечных пользователей. Если вы создаете сайт для группы, они, как правило, используют много flash / silverlight, чтобы сделать взаимодействие «крутым» и более плавным. Это был бы пример того, когда нужно полностью использовать HTML5 и использовать canvas для достижения некоторых из тех же эффектов. Очевидно, что IE6 не будет работать, но с течением времени, когда все больше и больше крупных компаний отказываются от поддержки IE6 (включая Google для gmail), это становится все меньшей и меньшей проблемой.
Если вам нужно разработать сайт, на котором люди по-прежнему будут активно использовать IE6, возможно, вам стоит воздержаться от использования новейших технологий. Усилия, через которые вам пришлось бы пройти, чтобы заставить что-то работать, в конечном итоге могут того не стоить, особенно если сроки поджимают и вы не являетесь экспертом.
Затем есть случаи посередине, и здесь, я думаю, вам нужно долго и упорно думать, если вы хотите продолжать поддерживать IE6. Я знаю кучу людей, которые прекратили поддержку и обнаружили, что гораздо проще найти баланс между CSS3 и HTML5 в других браузерах. Он все еще не идеален, но в конечном итоге с ним намного проще работать.
Комментарии:
1. Спасибо, я думаю, что смогу использовать этот подход в своих проектах, но проблема в том, что клиенты не говорят на том же языке, что и мы — убедить их (в случаях, когда вы хотите отказаться от поддержки ie6), что IE6 — древний браузер, будет чем-то другим.
Ответ №2:
Это зависит от вашего трафика и от того, кто тратит деньги на ваш сайт. Для нас необходимо продолжать поддерживать IE6, потому что эти пользователи тратят немалую сумму денег, и мы не в состоянии заставить их обновиться. (Если они тратят время на обновление, они не тратят время впустую.)
Если ваш сайт не коммерческий, то у вас должно быть намного больше свободы в определении минимальных требований к браузеру.
Ответ №3:
С одной стороны, рынок не готов к сайтам, использующим только HTML5 и CSS3. Однако, с другой стороны, если это хотя бы немного возможно, следует избегать поддержки IE6 и более ранних версий (см. вдохновляющее движение «IE6-no-more«), потому что для отрасли и среднего интернет-населения полезно избавиться от устаревших и проблемных технологий.
Ответ №4:
Если вы хотите создать современный веб-сайт, то есть на HTML5, я бы рекомендовал вам взглянуть на http://html5boilerplate.com/ Если вы посмотрите на этот шаблон, вы заметите, что они используют преимущества JavaScript-файла modernizr для обеспечения поддержки HTML5 в старых браузерах.
Я также настоятельно рекомендую вам прочитать книгу Аарона Густафсона «Понимание прогрессивного улучшения» Идея прогрессивных улучшений заключается в том, что ваш сайт будет выглядеть наилучшим образом при просмотре в браузере, который поддерживает современные селекторы / функции CSS и HTML5, оставаясь при этом базовым для устаревших браузеров. Существует дополнительная статья о прогрессивных улучшениях, которую также стоит прочитать http://www.alistapart.com/articles/progressiveenhancementwithcss
Ответ №5:
Это зависит от вашей аудитории, интенсивное использование HTML5 и CSS3 допустимо только тогда, когда вы уверены, что ваши пользователи будут использовать только современные браузеры. ( никогда еще мне так не везло)
На данный момент вы можете рассматривать их только для прогрессивных улучшений. То есть вы заставляете сайт нормально работать в IE6, а затем добавляете такие функции, как круглые границы / тени, <video>
тег или ускорение сайта с использованием локального хранилища, просто в качестве бонуса для более опытных пользователей.
Через несколько недель я начинаю большой проект, и все, что я могу сделать, это сделать его готовым к HTML5, используя правильный doctype, новые теги и несколько строк javascript, которые сделают его совместимым со старыми браузерами, но пока не будут использовать никаких интересных функций.