Какие браузеры поддерживают html5

от admin

Поддержка браузерами HTML5

Стандарт HTML5 поддерживает всевозможные странные методы. В то же самое время он возрождает (и стандартизует) некоторые старые либеральные правила HTML и вводит передовые возможности, которые работают только в новейших браузерах.

Что касается браузерной совместимости, функциональные возможности HTML5 можно разбить на три категории:

Возможности, которые уже работают . К этой категории принадлежат возможности, которые имеют высокий уровень поддержки, но официально не были частью стандарта HTML в прошлом (например, метод drag and drop). В нее так же входят возможности, которые можно реализовать для старых браузеров, приложив очень небольшие дополнительные усилия, наподобие семантических элементов.

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

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

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

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

Поддерживает ли браузер вашу разметку?

Последнее слово в вопросе, в каком объеме использовать HTML5, принадлежит разработчикам браузеров. Если браузер не поддерживает какую-либо возможность, нет никакого смысла использовать ее, несмотря на все, что говорится в стандарте. В настоящее время существуют четыре или пять основных браузеров (не считая браузеров для мобильных устройств с возможностью подключения к Интернету, таких как смартфоны и планшеты iPad).

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

К счастью, существует веб-сайт www.caniuse.com, который может помочь вам справиться с этой задачей. В нем даются подробности поддержки HTML5 во всех основных браузерах. И, самое приятное, он позволит вам выделить именно те возможности, которые вам требуются. Веб-сайт работает следующим образом:

Сначала выберите вкладку Tables, а потом вкладку Compatibility tables и выберите на ней требуемую вам возможность (или группу возможностей), установив соответствующие флажки:

Поиск по заданным параметрам проверяет поддержку только основных возможностей HTML5, но для всех версий всех браузеров

Можно выполнить поиск конкретной возможности, введя ее название в поле Search, расположенное по центру вверху страницы. Или же можно просмотреть целую категорию возможностей, установив соответствующий флажок в разделе Caterogy слева на странице. (В таком случае будет выведена таблица совместимости для каждой вложенной возможности.)

Например, чтобы проверить только возможности, которые считаются частью стандарта HTML5, сбросьте все флажки и установите только флажок HTML5. Чтобы проверить совместимость возможностей на основе JavaScript, которые сначала входили в HTML5, но потом были выделены в отдельную категорию, установите флажок JS API и т.д.

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

Прокрутите страницу вниз, чтобы просмотреть все результаты:

Использование caniuse.com

Для большого количества возможностей одновременно выводится только 20 таблиц результатов. Для просмотра следующих 20 таблиц результатов следует щелкнуть по ссылке Show next 20 внизу страницы.

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

Также приводится примерное количество браузеров, поддерживающих данную возможность, в процентах.

Статистика популярности браузеров

Последним важным пунктом проблемы поддержки возможностей браузерами является статистика популярности конкретных браузеров. Иными словами, информация о том, сколько посетителей Паутины пользуется браузером, поддерживающим возможности, которые вы намереваетесь использовать в своей разметке.

Одним из хороших источников этой информации является популярный сайт GlobalStats. На странице сайта в раскрывающемся списке Statistic выберите вариант Browser. А вариант Browser Version позволит просмотреть популярность не только конкретного браузера, но и каждой из его версий. Результаты можно сузить, выбрав конкретный регион или страну в раскрывающемся списке Country/Region:

Статистика популярности браузеров GlobalStats

Сайт GlobalStats собирает статистические данные ежедневно с помощью кода слежения, который установлен на миллионах веб-сайтов. Однако для вашего сайта цифры могут быть совершенно другими. Например вот статистика для этого сайта, полученная через Google Analytics за тот же период:

Статистика популярности браузеров через Google Analytics

Как видите пользователей современных браузеров Google Chrome, Opera и Firefox гораздо больше чем в статистике от GlobalStats. При этом пользователей Internet Explorer всего 6%, что в три раза меньше чем в общемировой статистике. Эта статистика очень сильно зависит от тематики сайта. Данный сайт создан в основном для IT-специалистов, которые редко используют устаревшие браузеры. Если посмотреть статистику какой-нибудь популярной социальной сети, то количество счастливых обладателей браузеров IE<9 может достигать 50%.

Определение возможностей с помощью Modernizr

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

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

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

Например, код для проверки поддержки возможности браузерами может не работать на некоторых браузерах по той или иной непонятной причине или быстро устареть. Вместо этого подумайте о применении компактного, постоянно обновляемого инструмента Modernizr, который проверяет поддержку браузерами широкого диапазона возможностей HTML5 и связанных возможностей. Он также предоставляет классный метод для реализации поддержки резервных решений при использовании новых возможностей CSS3.

Проверка веб-страниц с помощью Modernizr выполняется так:

Загрузите JavaScript-файл для Modernizr. Для этого в области Download Modernizr в верхней центральной части страницы нажмите кнопку Development.

Обычно, имя этого файла будет похоже на modernizr-2.0.6.js. Точное имя зависит от используемой версии. Некоторые разработчики переименовывают этот файл, убирая номер версии, например modernizr.js. Это позволяет обновить файл Modernizr в будущем, не требуя поиска и корректировки ссылок на него в веб-страницах, в которых он используется.

Код полной версии Modernizr несколько объемистый. Эта версия сценария предназначена для выполнения тестирования на стадии разработки веб-сайта. По окончании разработки, когда сайт можно публиковать для использования, можно создать облегченную версию сценария Modernizr, которая тестирует только требуемые возможности.

Для этого загрузите версию Production, нажав одноименную кнопку в области Download Modernizr. Откроется страница, предлагающая выбрать возможности, поддержку которых вы хотите проверять (установив соответствующие флажки), а потом создать свою специальную версию сценария Modernizr, нажав кнопку Generate слева внизу страницы.

Скопируйте файл сценария в папку, в которой находится веб-страница, требующая тестирования. Либо файл сценария можно поместить в подкаталог и подкорректировать должным образом путь к ней в ссылке JavaScript.

В блоке <head> тестируемой веб-страницы вставьте ссылку на файл сценария Modernizr. В следующем листинге показан пример вставки этой ссылки:

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

Полный список тестируемых с помощью Modernizr возможностей, а также код JavaScript для тестирования каждой из этих возможностей, смотрите в документации Modernizr.

Напишите сценарий, который тестирует требуемую возможность, а потом выполняет соответствующее действие. Пример возможного сценария для проверки поддерживается ли HTML5-возможность drag and drop, и вывода результатов в окне браузера показан в следующем листинге:

Результат исполнения сценария тестирования поддержки браузером возможности drag and drop

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

Введение в HTML5

HTML (HyperText Markup Language) представляет язык разметки гипертекста, используемый преимущественно для создания документов в сети интернет. HTML начал свой путь в начале 90-х годов как примитивный язык для создания веб-страниц, и в настоящий момент уже трудно представить себе интернет без HTML. Подавляющее большинство сайтов так или иначе используют HTML.

В 2014 году официально была завершена работа над новым стандартом — HTML5, который фактически произвел революцию, привнеся в HTML много нового.

Что именно привнес HTML5?

HTML5 определяет новый алгоритм парсинга для создания структуры DOM

добавление новых элементов и тегов, как например, элементы video , audio и ряд других

переопределение правил и семантики уже существовавших элементов HTML

Фактически с добавлением новых функций HTML5 стал не просто новой версией языка разметки для создания веб-страниц, но и фактически платформой для создания приложений, а область его использования вышла далеко за пределы веб-среды интернет: HTML5 применяется также для создания мобильных приложений под Android, iOS, Windows Mobile и даже для создания десктопных приложений для обычных компьютеров (в частности, в ОС Windows 8/8.1/10).

В итоге, как правило, HTML 5 применяется преимущественно в двух значениях:

HTML 5 как обновленный язык разметки гипертекста, некоторое развитие предыдущей версии HTML 4

HTML 5 как мощная платформа для создания веб-приложений, которая включает не только непосредственно язык разметки гипертекста, обновленный HTML, но и язык программирования JavaScript и каскадные таблицы стилей CSS 3.

Кто отвечает за развитие HTML5? Этим занимается World Wide Web Consortium (сокращенно W3C — Консорциум Всемирной Паутины) — независимая международная организация, которая определяет стандарт HTML5 в виде спецификаций. Текущую полную спецификацию на английском языке можно посмотреть по адресу https://www.w3.org/TR/html5/. И надо отметить, что организация продолжает работать над HTML5, выпуская обновления к спецификации.

Поддержка браузерами

Надо отметить, что между спецификацией HTML5 и использованием этой технологии в веб-браузерах всегда был разрыв. Большинство браузеров стало внедрять стандарты HTML5 еще до их официальной публикации. И к текущему моменту большинство последних версий браузеров поддерживают большинство функциональностей HTML5 (Google Chrome, Firefox, Opera, Internet Explorer 11, Microsoft Edge). В то же время многие старые браузеры, как например, Internet Explorer 8 и более младшие версии, не поддерживают стандарты, а IE 9, 10 поддерживает лишь частично.

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

Для проверки поддержки HTML5 конкретным браузером можно использовать специальный сервис http://html5test.com.

Необходимые инструменты

Что потребуется для работы с HTML5? В первую очередь, текстовый редактор, чтобы набирать текст веб-страниц на html. На данный момент одним из самых простых и наиболее популярных текстовых редакторов является Notepad++ , который можно найти по адресу http://notepad-plus-plus.org/. К его преимуществам можно отнести бесплатность, подсветка тегов html. В дальнейшем я буду ориентироваться именно на этот текстовый редактор.

Также стоит упомянуть кроссплатформенный текстовый редактор Visual Studio Code. Данный редактор обладает несколько большими возможностями, чем Notepad++, и кроме того, может работать не только в ОС Windows, но и в MacOS и в операционных системах на основе Linux.

И также потребуется веб-браузер для запуска и проверки написанных веб-страничек. В качестве веб-браузера можно взять последнюю версию любого из распространенных браузеров — Google Chrome, Mozilla Firefox, Microsoft Edge, Opera.

Сравнение браузеров (HTML5)

Данные таблицы сравнивают поддержку HTML5 и CSS3 в наиболее распространенных браузерах.

Содержание

Обозначения

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

Параметр Значение
Да Браузер полностью поддерживает данное свойство/элемент
Нет Данное свойство или элемент не поддерживается
Частично Присутствует неполная реализация данного свойства/элемента
Экспериментальная поддержка Присутствует экспериментальная поддержка
Тестовая сборка Присутствует поддержка в тестовых сборках браузера.

HTML 5

Новые теги

Internet Explorer Firefox Chrome Safari Opera
Embedded content elements
embed 3.0 1.0 1.0 1.0 7.0
video 9.0 3.5 3.0 Да 10.5
audio
source
canvas 9.0 1.5 2.0 [1] Да 9.0
SVG in text/html 9.0 4.0 Да Нет 11.65
MathML in text/html Нет 4.0 Да
Section elements
section 9.0 4.0 5.0 5.0 Да
nav
article
aside
hgroup
header
footer
Grouping content elements
figure 9.0 4.0 Да Нет Да
figcaption
Text-level semantic elements
mark 9.0 4.0 Да Нет 11.10
ruby 3.0 Нет 4.0 Нет
time Нет Нет Нет 11.50
wbr Да Да Да Да Да
Interactive elements
details Нет Нет Да Нет Нет
summary Да Да Да Да Да
command Нет Нет Нет Нет Нет
menu Да Да Да Да Да
Internet Explorer Firefox Chrome Safari Opera

Элементы и атрибуты форм

Internet Explorer Firefox Chrome Safari Opera
Input types
search Нет 4.0 1.0 Да 11.0
tel Нет 4.0 3.0 Да 11.0
url Нет 4.0 3.0 Да 9.0
email Нет 4.0 3.0 Да 9.0
datetime Нет Нет Да Да 9.0
date
month
week
time
datetime-local
number Нет Нет 3.0 Да 9.0
range Нет Нет 1.0 Да 9.0
color Нет Нет 4.0 Да 11.0
Атрибуты
autocomplete Да Да Да Да 9.0
autofocus Нет 4.0 2.0 Да 9.0
placeholder Нет 4.0 3.0 Да 11.0
multiple Нет 3.6 2.0 Да 11.0
pattern Нет 4.0 4.0 Да 9.0
required Нет 4.0 3.0 Да 9.0
control Нет 4.0 Да Нет 9.0
form Нет 4.0 Да Нет 9.0
formaction Нет 4.0 Да Нет 10.5
formenctype Нет 4.0 Да Нет 10.5
formmethod Нет 4.0 Да Нет 10.5
formnovalidate Нет 4.0 Да Нет 10.5
formtarget Нет 4.0 Да Нет 10.5
labels Нет Нет Нет Нет 9.0
Элементы
datalist Нет 4.0 Нет Нет 9.0
keygen 1.0 1.0 Нет 11.10
output 4.0 Нет Нет 9.0
progress Нет Да Нет 11.0
meter Нет Да Нет 11.0
Internet Explorer Firefox Chrome Safari Opera

Форматы видео / аудио

Internet Explorer Firefox Chrome Safari Opera
Видео
Ogg Theora Нет Да Да Нет Да
H.264 Да Нет Да [2] Да Нет
WebM VP8 Нет Да Да Нет Да
Аудио
Vorbis Нет Да Да Нет Да
MP3 Да Нет Да [источник не указан 480 дней] Да Нет
AAC Да Нет Да Да Нет
Читать:
Найти вероятность что случайно выбранное трехзначное число делится на 25

Связанные спецификации

Internet Explorer Firefox Chrome Safari Opera
Web Storage 8.0 3.5 Да Да 10.5
Indexed DB HTML5 Labs [3] 4.0 11.0 Частично Нет
File API HTML5 Labs [4] 3.5 7.0 Да 11.1
File API: Writer Нет Нет Частично Частично Нет
Media Capture API Нет 4.0 Нет Нет 12.0
Server-Sent Events Нет Нет Да Да 11.0
WebSocket HTML5 Labs [5] 4.0 6.0 [6] 5.0 11.0
Web Workers Нет 3.5 2.0 Да 10.6
Geolocation API 9.0 3.5 5.0 Да 10.6
Offline Web applications Нет 3.5 5.0 Да 10.6
WebGL Нет 4.0 9.0 Нет 12.0 не во всех ОС

Каскадные таблицы стилей (CSS3)

Chrome Firefox [7] Opera Internet Explorer
Box Model [spec 1]
overflow-x 1.0 1.5 9.5 Частично
overflow-y
Backgrounds and Borders [spec 2]
multiple background 1.0 3.6 10.5 9.0
background-clip 1.0 1.0
background-origin
background-size 3.6
border-radius 1.0 1.0 [8]
border-image 1.0 3.5 Нет
box-decoration-break Нет Нет 10.6
box-shadow 1.0 3.5 10.5
Colors [spec 3]
opacity 1.0 1.0 9.0 9.0
Fonts [spec 4]
font-size-adjust Нет 1.0 [9] Да Нет
font-stretch Нет Нет
Text [spec 5]
text-shadow Да 3.5 9.5 Нет
word-break Нет Нет Нет Частично
text-wrap Нет
word-wrap 1.0 3.5 10.5 5.0
text-align-last Нет Нет Нет Частично
text-justify 5.5
punctuation-trim Нет
text-emphasis
text-outline
hanging-punctuation
text-overflow (dropped) Частично Частично Частично
User interface [spec 6]
Paged media [spec 7]
Speech [spec 8]
Media Queries [spec 9]
width 1.0 3.5 9.0 9.0
height
device-width
device-height
device-aspect-ratio
color 10.5
color-index
monochrome
resolution Нет
orientation 11.00
aspect-ratio 9.5
grid Нет 10.5
scan
Ruby characters [spec 10]
Multi-column Layout [spec 11]
Multi-column Layout 1.0 1.5 11.10 Нет
Animation [spec 12]
animation Частично Частично Да Нет
animation-delay
animation-direction
animation-duration
animation-iteration-count
animation-name
animation-play-state
animation-timing-function
2D Transforms [spec 13]
transform Частично 3.5 10.5 Нет
transform-origin
3D Transforms [spec 14]
transform Частично Частично Нет Нет
transform-origin
transform-style
text-outline
perspective
perspective-origin
backface-visibility
Transitions [spec 15]
transition Частично 3.7 10.5 Нет
transition-duration
transition-timing-function
transition-delay
transition-property
Flexible Box Layout [spec 16]
box-align Частично 1.0 Да Нет
box-direction
box-flex
box-flex-group
box-lines Нет
box-ordinal-group 1.0
box-orient
box-pack
Marquee [spec 17]
marquee-direction через специфичное свойство -webkit Нет Нет Нет
marquee-play-count
marquee-speed
marquee-style
overflow-style

Другие измерения

По версии html5test.com (по состоянию на 16.12.2012) [10] браузеры показывают следующие результаты в тестах (максимально можно набрать 500 очков):

Браузер Версия Очки Бонус-очки
Internet Explorer 10 320 6
Safari 6.0 378 8
Firefox 17.0.1 392 10
Opera 12.10 419 9
Chrome 23.0 448 13

Результаты мобильных браузеров по тому же источнику:

Производитель Платформа Очки Бонус-очки
Microsoft WP7 Mango 141 5
Google Android 4.0.3 275 3
Samsung Bada 2.0 270 9
HP webOS 2.1 189 5
Apple iOS 4.3 217 7
Opera Mobile 12.0 369 11
Blackberry OS 7 277 3
Nokia MeeGo 283 14

Ссылки

Спецификации

  1. «CSS basic box model», W3C , <http://www.w3.org/TR/css3-box/>  
  2. «CSS Backgrounds and Borders Module Level 3», W3C , <http://www.w3.org/TR/css3-background/>  
  3. «CSS Color Module Level 3», W3C , <http://www.w3.org/TR/css3-color/>  
  4. «CSS Fonts Module Level 3», W3C , <http://www.w3.org/TR/css3-fonts/>  
  5. «CSS Text Level 3», W3C , <http://www.w3.org/TR/css3-text/>  
  6. «CSS3 Basic User Interface Module», W3C , <http://www.w3.org/TR/css3-ui/>  
  7. «CSS3 Module: Paged Media», W3C , <http://www.w3.org/TR/css3-page/>  
  8. «CSS3 Speech Module», W3C , <http://www.w3.org/TR/css3-speech/>  
  9. «Media Queries», W3C , <http://www.w3.org/TR/css3-mediaqueries/>  
  10. «CSS3 Ruby Module», W3C , <http://www.w3.org/TR/css3-ruby/>  
  11. «CSS Multi-column Layout Module», W3C , <http://www.w3.org/TR/css3-multicol/>  
  12. «CSS Animations Module Level 3», W3C , <http://www.w3.org/TR/css3-animations/>  
  13. «CSS 2D Transforms Module Level 3», W3C , <http://www.w3.org/TR/css3-2d-transforms/>  
  14. «CSS 3D Transforms Module Level 3», W3C , <http://www.w3.org/TR/css3-3d-transforms/>  
  15. «CSS Transitions Module Level 3», W3C , <http://www.w3.org/TR/css3-transitions/>  
  16. «Flexible Box Layout Module», W3C , <http://www.w3.org/TR/css3-flexbox/>  
  17. «CSS Marquee Module Level 3», W3C , <http://www.w3.org/TR/css3-marquee/>  

Примечания

Примечания Internet Explorer

Третья превью версия IE9 и Google Chrome 6.0 уже способны воспроизводить HTML5 видео на таком популярном хостинге видео как YouTube.

Примечания Firefox

Примечания Chrome

Другие примечания

  1. Частичная поддержка имелась в версии 1.0
  2. MPEG-4/H.264 video format
  3. HTML5Labs — Info
  4. HTML5Labs — Documentation
  5. HTML5Labs — Info
  6. Устаревшая спецификация поддерживалась с версии 4.0
  7. CSS support char «Mozilla CSS support char», Mozilla , <https://developer.mozilla.org/en/Mozilla CSS support char>  
  8. Firefox 3.5 имеет более полную поддержку
  9. Firefox 3.0 имеет более полную поддержку
  10. The HTML5 test — how well does your browser support HTML5?
  • Сравнение программного обеспечения

Wikimedia Foundation . 2010 .

Полезное

Смотреть что такое «Сравнение браузеров (HTML5)» в других словарях:

Сравнение браузеров — В этой статье отсутствует вступление. Пожалуйста, допишите вводную секцию, кратко раскрывающую тему статьи. Содержание … Википедия

HTML5 — (HyperText Markup Language) Расширение … Википедия

Сравнение платформ для создания RIA — Содержание 1 Поддержка в браузерах 2 Технические возможности платформ 3 Примечания … Википедия

HTML5 video —     HTML HTML и HTML5 Динамический HTML … Википедия

Сравнение браузерных движков (HTML5 Canvas) —     HTML HTML и HTML5 Динамически … Википедия

Сравнение браузерных движков —     HTML HTML и HTML5 Динамически … Википедия

HTML 5 — HTML5 (Hypertext Markup Language) Расширение файла: HTML: .html, .htm XHTML: .xhtml, .xht, .xml Тип MIME: HTML: text/html XHTML: application/xhtml+xml, application/xml Type code: TEXT UTI: public.html Разработчик … Википедия

Mozilla Firefox — Запрос «Firefox» перенаправляется сюда; см. также другие значения … Википедия

Internet Explorer — Иное название этого понятия  «IE»; см. также другие значения. Windows Internet Explorer Компонент Microsoft Windows … Википедия

День загрузки — Запрос «Firefox» перенаправляется сюда. Cм. также другие значения. Mozilla Firefox Firefox 3.0 на платформе GTK+/Linux Тип Браузер … Википедия

How to test Browser Compatibility for HTML5

User experience is the key to customer satisfaction and retention that brings all the focus on how the application appears and functions. HTML plays a major role in the UI of the web application. Hence with the growing expectations of users, demand for new advanced features of different elements on a webpage has increased. HTML5 enhances the UI elements via its new features and additional support to enrich the user experience offered by the webpage elements.

Introduction of HTML5 standard

HTML has evolved over the years with new features and support added for different elements on the webpage with every release. HTML5 is the latest version of HTML used on all web pages today. It was introduced in 2014 with the idea to support multimedia features, including various new tags, form element tags, geolocation tags, etc.

HTML5 supports the existing markups while introducing new markups and APIs for complex web applications. It is meant to subsume older versions for backward compatibility with older web applications. W3C maintains standards so that all browsers have a common standard to follow, making end-user experience consistent across browsers.

Why use HTML5?

HTML5 has been introduced to support complex web applications with advanced multimedia element support. It offers a lot more new tags and support elements such as form, semantic features along with many others. Some of the key features that make HTML5 user-friendly are:

  • Cleaner code structure: In earlier HTML versions, only the div tag was used across the webpage which didn’t make it clear for the browser in terms of semantics. Thus many new semantic tags like header, footer, section, article, etc were introduced in order to avoid confusion in the code.
  • Inbuilt audio and video compatibility: HTML5 now comes with audio and video tags that support playing media on your web pages along with many features built into these tags.
  • Form features: HTML5 has input and search fields that help to build better experiences for users.
  • Storage capability: HTML5 helps to use session storage and local storage to store data on the browser. It also has an application cache and web SQL storage.
  • Game development: HTML5 introduces the canvas element, which helps immensely with game development owing to its popularity among users.

Browser Compatibility for HTML5

Browser compatibility is essential for users to have a consistent experience as they operate across different browsers, platforms, and devices. While the new features of HTML5 do support some of the older browser versions partially, it is essential to understand how these features can be leveraged to offer a seamless experience. The browser versions’ support for various features is analyzed using Caniuse.com as shown below:

Form Features

The new form features of HTML5 also termed Webforms 2.0 have introduced several new type attributes for the <input> element in addition to the ones already existing for HTML4. These new type attributes include date, datetime, datetime-local, time, week, month, url, email, range, and number.

HTML5 also introduced a new <output> element in the Form, dedicated to generate different types of outputs for the forms.

Several other new attributes added as Form Features include list, placeholder, autofocus, slider, autocomplete, pattern, required, multiple, novalidate, and formnovalidate.

Using Caniuse for HTML5 Form Features to understand how these new form features are supported by various browser versions as shown below.

Browser Compatibility of HTML5 Form Features

It can be observed that Chrome, Edge, Opera, Samsung Internet, Chrome for Android, Opera Mobile, and QQ Browser supports the new form features. However, IE, Firefox, Safari on iOS, Opera Mini, and Safari offer limited support to the Form features.

Hence it is recommended to perform diligent cross browser compatibility tests beyond chrome on these browsers for identifying bottlenecks and limited capabilities. These limitations can be overcome by tweaking code to match the overall user experience across browsers.

Media Features

HTML5 allows the users to embed Audio and Video in the webpages to make them more engaging and interactive to the users. Using this feature, the user can embed the audio and video without the need of building a video player using the <audio> and <video> tags. This has reduced the effort required for adding media to the webpage.

Moreover, HTML5 videos can be styled using CSS3 using <video> tag. While HTML5 supports various media formats such as MP3, AAC, and Ogg Vorbis for audio, MPEG-4, WebM, and Ogg Theora for video. However, not all browsers support all of these media formats, which is why performing browser compatibility tests is essential.

Media Source Extensions have been created by W3C to standardize the media features across the browsers for enhancing the cross-browser compatibility.

Using Caniuse for HTML5 Media Source Extensions to understand how these new media features of HTML5 are supported by various browser versions as shown below.

Browser Compatibility of HTML5 Media Source Extensions

It can be observed that older versions across all browsers do not support Media Source Extension, while the newer versions of Safari on iOS, and IE offer limited support.

Semantic Tags

HTML5 semantics are designed in such a way that they offer better accessibility to the users of older browsers while providing a better user experience.

The elements such as <font>, <big>, and <center> that were purely presentational have been dropped off in HTML5. Other semantic attributes that have been removed from HTML5 elements include background and table attributes on <body>, bgcolor on <table>, and align on <img>. Moreover, the <frame> element that caused major accessibility issues have also been removed.

The new semantic elements added in HTML5 include <header>, <nav>, <footer>, <aside>, <article>, <figure>, <figcaption>, <details>, <main>, <section>, <mark>, <summary>, and <time>.

Using Caniuse for HTML5 Semantic Elements to understand how these new semantic features of HTML5 are supported by various browser versions as shown below.

Browser Compatibility of HTML5 Semantic Elements

It can be observed that the new semantic elements in HTML5 are largely supported by most of the new browser versions while being partially supported by the older versions. Hence, cross browser compatibility testing can help identify the gaps in partial support, which can be later enhanced by tweaking the code.

Storage Capability

The Web Storage capability of HTML5 allows the web application to store data locally within the browser on the client-side. This data stored in the form of key/value pair is similar to that of cookies storage but faster than that and never expires, unlike cookies, since the data is not sent to the server-side. It is also more secure, and one can store at least 5MB of data.

Using Caniuse for HTML5 Web Storage to understand how these new form features of HTML5 are supported by various browser versions as shown below.

Browser Compatibility of HTML5 Web Storage

It can be observed that the new semantic elements in HTML5 are largely supported by most of the browsers apart from the older versions of a few browsers like Safari, Opera, IE, and Opera Mini.

Canvas Element

HTML5 introduced <canvas> element for enabling the users to draw graphics using JavaScript. While the <canvas> element has only two specific attributes width and height in addition to the core HTML5 attributes, it acts as a container for the graphics. The <canvas> remains blank initially, which requires JavaScript code to draw the graphics in it.

Using Caniuse for HTML5 Canvas Element to understand how the new <canvas> element of HTML5 is supported by various browser versions as shown below.

Browser Compatibility of HTML5 Canvas

It can be observed that the new <canvas> element in HTML5 is largely supported by most of the browsers apart from being partially supported by older versions of a few browsers like Safari, Firefox, Android Browser, and Opera Mini, and not supported by older versions of IE.

Handling cross browser compatibility in HTML5

There is a large range of browsers available in the market while a majority of the chunk is taken by

  • Google Chrome
  • Mozilla Firefox
  • Safari
  • Opera
  • Microsoft Edge

Apart from these, there are many other browsers that users use and it is unnecessary to make web applications compatible with them in order to avoid isolating users that use these browsers and for a consistent user experience across browsers.
HTML5 is now compatible with all popular browsers (Chrome, Firefox, Safari, IE9, and Opera) and with the introduction of DOCTYPE, it is even possible to have a few HTML features in older versions of Internet Explorer too.

Cross Browser Testing on Real Devices

To ensure that the web applications have consistent UX across different browsers and platforms, Cross Browser Testing on a real device cloud is essential. By performing cross browser tests on real browsers and devices, the tester could detect and highlight functionalities in the UX that are inconsistent with specific browser versions, which can later be fixed at the backend.

BrowserStack’s Real Device Cloud allows access to a fleet of 3000+ desktop browsers and real mobile devices, providing wide coverage for Cross Browser & Platform Testing. One can also leverage the power of automation testing to check cross browser compatibility over the BrowserStack’s real device cloud, saving both time and cost incurred. This allows devs and testers to build applications to retain and delight users through its seamless user experience.

Похожие статьи