HTML 5 Browser Compatibility Chart-HTML 5 в старых браузерах?
Я только начал рассматривать возможность использования api HTML 5 для проекта Rails/JQuery, поэтому я могу использовать этот отличный data-
атрибут для хранения значений.
Я беспокоюсь, хотя о проблемах совместимости браузера. У меня есть два вопроса (основные вопросы):
чтобы использовать HTML 5, Нужно ли людям обновлять свои браузеры? Как это работает?
есть ли график до дня, что особенности каждого браузера макет двигателя поддерживает, более современным, чем это статья Википедии о сравнении движков компоновки HTML и когда я могу использовать... HTML 5 страница?
это будет проблема с людьми, использующими IE6, например? Много не-компьютерных saavy людей, с которыми я разговаривал, которые хотят получить присутствие в интернете, и люди, с которыми они разговаривают, все еще используют IE6!
Если это не проблема, и вы можете использовать HTML 5 в старых браузерах, как ты? Или какие документы я должен посмотреть :)? Спасибо.
Update: я опубликую некоторые интересные ссылки, как я их нахожу ниже.
FindMeByIP: "простое приложение, которое показывает поддержку ваших браузеров для функций CSS3 и HTML5 в удобном для чтения формате с помощью Modernizr."- поддержка браузера для CSS3 и HTML5
6 ответов
не полезно рассматривать HTML5 как единый объект, который браузеры либо "поддерживают", либо "не поддерживают". HTML5-это:
попытка кодифицировать широко распространенную существующую практику за пределами того, что охватывали предыдущие стандарты W3 HTML и DOM, такие как расширения IE и Firefox, которые скопировали другие браузеры, и давние модели поведения "DOM Level 0", которые все принимали как должное, но не были записаны в какие-либо спецификации до.
случайный выбор новых расширений, еще не широко используемых, которые, как ожидается, производители браузеров будут поддерживать. Некоторые из них уже преуспели, направляясь во все новые браузеры; некоторые были отключены в свои собственные спецификации (что гораздо более управляемо для всех), некоторые противоречивы, а некоторые вообще никого не волнуют.
HTML5-это также:
- не закончил. Спецификация является массивной, сложной, неполной и, вероятно, изменится в деталях (или, возможно, более того), прежде чем она станет надлежащим стандартом. Никто не может сказать, что они "поддерживают HTML5", потому что никто еще не знает, что "HTML5" на самом деле собирается быть.
в практическом плане: есть некоторые части HTML5, которые уже давно используются. Есть некоторые части, которые вы можете безопасно использовать в современных браузерах. Есть некоторые части, которые вы можете использовать в новых браузерах, кроме IE. Есть много частей, которые вы можете использовать с обходными путями или "изящной деградацией". Есть некоторые части, которые вы никогда не сможете использовать. Пока вам придется изучать каждый отдельно, потому что не будет браузера, который поддерживает абсолютно все HTML5 в течение многих, многих лет. Если вообще. Добавьте дополнительные функции, которые вам нравятся постепенно, и они поддерживаются большей долей браузеров; не будет "Большого Взрыва", когда все обновляют свой браузер сразу.
по состоянию на data-
атрибуты, ну, да, вы можете уйти с их использованием, в том, что большинство браузеров всегда разрешали любые старые атрибуты проходить в любом случае. Это типично для нескольких расширений HTML5, браузеру не нужно явно " поддерживать’ это для того, чтобы работать.
но есть и другие способы передачи данных (классы, комментарии, скрипты блоки и т. д.), Я не совсем уверен, что стоит отбрасывать (универсально поддерживаемые, проверяемые по фиксированному стандарту) страницы HTML4/XHTML1 только для этой функции.
вы можете проверитьdiveintohtml5.ep.Ио и modernizr.com.
Modernizr-это небольшая и простая библиотека JavaScript, которая помогает вам использовать преимущества новых веб-технологий (CSS3, HTML 5), сохраняя при этом прекрасный уровень контроля над старыми браузерами, которые могут еще не поддерживать эти новые технологии.
вот интерактивный график поддержки функций html: http://a.deveria.com/caniuse/
Как вы можете видеть, есть много браузеров, которые поддерживают довольно много функций H5.
если вы используете jQuery, беспокоитесь о совместимости, и единственная причина, по которой вы исследуете HTML5, - использовать data-*
набор атрибутов, затем я бы подумал о переключении обратно на более поддерживаемый doctype и использовании jQuery $().data()
метод, который позволяет привязывать произвольные фрагменты данных к узлам DOM, подобно тому, как data-
набор атрибутов делает.
пример:
<button id="set">Click me!</button>
$('button#set').click(function(){
if($(this).data('name')){
alert('Clickin\' again so soon, ' + $(this).data('name') + '?');
}else{
$(this).data('name', prompt('Hey good lookin\', what\'s your name?', ''));
}
});
мой ответ может быть не тот, который вы хотели бы, но я бы сказал - Не надо. Пока не используйте HTML 5.
хотя это старый(иш) вопрос, тема поддержки браузера будет всегда актуальной. Нет правильного или неправильного способа подойти к нему, но взгляните на одну из многих таблиц поддержки функций браузера, которые показывают вам, какой процент пользователей увидит определенную функцию, а затем будет жестоким.
Не пытайтесь угодить всем. Не убивайте себя, чтобы поймать несколько процентов луддитов, которые все еще используют IE7. В следующем году замените IE8. Лично я бы будьте счастливы потерять 8%, чтобы потратить это время на практику передового мышления, а не на обслуживание тех, кто не знает, что такое обновление.
возможно, ваш сайт заставит людей обновляться. Эти люди в конце концов придут в себя.