Поддерживает ли Internet Explorer 8 HTML 5?

138

Есть ли поддержка HTML5 в IE8? Включено ли это в план развития IE8?

BuddyJoe
источник
HTML 5 все еще остается черновиком. Значит, с ним может случиться все, что угодно. Его разработку можно было даже остановить, как это случилось с XHTML 2.
Gumbo
37
Надеюсь, после IE8 не будет IE, и никто не будет обижаться на такие вопросы.
Eastern Monk
Более того, HTML5 - это IE8, который есть и всегда будет черновиком!
MEM

Ответы:

80

IE8 beta 2 поддерживает два API из HTML5: обмен сообщениями между документами и хранилище без SQL .

IE8 beta 2 не реализует алгоритм синтаксического анализа HTML5 или новые элементы (нет <canvas>или <video>поддержка).

Также есть исправления ошибок, которые лучше согласовывают IE8 с HTML5.

Hsivonen
источник
43
так что ответ таков: IE8 не поддерживает html5 для всех целей и задач - только некоторые его части. Это делает использование HTML5 (как в разметке HTML, а не API сценариев) спорным.
Роланд Тепп
Если вам нужна поддержка HTML 5 в IE 8, скачайте плагин IE под названием «Chrome Frame». Он отображает HTML 5 так же, как Google Chrome! Более подробная информация здесь: appleinsider.com/articles/09/09/24/…
Shadowpat
72

Вы можете заставить теги HTML5 работать в IE8, включив этот JavaScript в заголовок.

<script type="text/javascript">
 document.createElement('header');
 document.createElement('nav');
 document.createElement('menu');
 document.createElement('section');
 document.createElement('article');
 document.createElement('aside');
 document.createElement('footer');
</script>
goker.cebeci
источник
1
Есть ли справочная статья, в которой вы это нашли? Спасибо +1
BuddyJoe
Извините, я включил его для проверки формы, но не сработал. Есть ли ссылка, по которой мы могли бы узнать больше о том, как заставить его работать?
Хелен Нили
Спасибо, это сработало для моего элемента раздела, все остальное я удалил. Откуда ты это знаешь?
туман
1
Вероятно, вы могли бы использовать JavaScript для реализации большого количества HTML5, просто создав пользовательские компоненты JS (для новых элементов формы вам придется привязать некоторые функции), но добавление базы данных SQL не произойдет вместе с некоторыми другими Возможности HTML5. Лично я бы сказал, держитесь подальше от HTML5 для приложений IE8.
Джозия
1
@BuddyJoe, см. Раздел «Использование элементов HTML5 в браузерах, отличных от HTML5» на веб-сайте MDN здесь: developer.mozilla.org/en-US/docs/Web/Guide/HTML/…
Флоран Пайо,
43

Вы можете использовать этот сценарий оболочки IE HTML5 для получения базового уровня поддержки новых семантических элементов в HTML5, таких как <article>.

Джон
источник
2
Следует отметить, что это не помогает в некоторых случаях использования JavaScript. Например, не будет работать следующее: var div = document.createElement ('div'); div.innerHTML = '<section> тест </section>'; В итоге мы получаем div.childNodes.length = 2. Я столкнулся с проблемой, используя jQuery, и пытался выяснить, что происходит в IE.
Ник Спейсек,
2
Nitpick: сценарий называется «shiv» (как в тюремном ноже ручной работы), а не «shim».
Микко Ранталайнен
6
Ну, если быть полностью педантичным, автор использует и «шайбу», и «шив». Проект называется «html5shim». Цитата из code.google.com/p/html5shim : Общий вопрос: в чем разница между html5shim и html5shiv? Ответ: ничего, у одного m, а у другого av - все.
Джон
26

Modernizr также является отличным вариантом для предоставления IE возможностей рендеринга HTML5.

Саймон
источник
6
С домашней страницы Modernizer - Modernizr не добавляет недостающие функции в браузеры; вместо этого он обнаруживает встроенную доступность функций и предлагает вам способ поддерживать высокий уровень контроля над вашим сайтом независимо от возможностей браузера.
Ира Миллер,
10
Не могу поверить, что у этого было так много голосов против. +1, чтобы отменить одно из них. Modernizr не может добавить функциональные возможности к браузеру, но (наряду с большим количеством других полезных вещей) , что делает включать функциональные возможности HTML5 Shim, который был упомянут в других ответах здесь, и дали хорошие результаты.
Spudley
Модернизатор в сочетании с polyfill ( modernizr.com/docs/#polyfills ), кажется, добавляет поддержку совместимости для функций HTML5. Однако должен быть включен JavaScript.
Микко Ранталайнен
1
Не могу поверить, что это набрало столько голосов. Modernizr включает дополнительную библиотеку под названием shiv, которая, например, позволяет понимать теги HTML5, плюс modernizr включает обнаружение функций, но не имеет ничего общего с html5. Так что, если вы хотите, например, понять html5, более логично использовать shiv, поскольку Modernizr будет излишним. По сути, Modernizr - НЕ отличный вариант, как вы сказали.
сотн 02
+1 за ответ и спасибо! Повторите верхний комментарий - он поддерживает старые IE для правильного рендеринга документа, он может не предоставлять функции проигрывателя html5 или 3D-рендеринга и доп., Но для обычных сайтов, которые полагаются на правильное наследование стилей css и которые используют новые теги html5, он отлично справляется со своей работой. Он также исправляет некоторые проблемы с рендерингом и немного расширяет поддержку css: добавление поддержки rgba () и других вещей путем добавления фильтров, что упрощает жизнь разработчика - эти тривиальные вещи, которые в настоящее время всегда должны быть написаны, чтобы покрыть старые ошибочные браузеры Microsoft ...
Васил Попов
17

Поддерживает ли он

<!DOCTYPE html>

Да.

Возможно, лучший вопрос - какие современные веб-функции поддерживает IE8. Некоторые из лучших мест для ответа: caniuse.com , html5test.com и browserscope.org .

HTML5 означает много разных вещей для разных людей. В наши дни это означает функциональность HTML, CSS и JavaScript. Этот термин становится немного похожим на «Web 2.0».

Джастин
источник
8

Поддержка HTML5 в IE8 ограничена, но Internet Explorer 9 только что был выпущен и имеет сильную поддержку новых появляющихся технологий HTML5.

Анонимный
источник
5

HTML5 все еще находится в стадии черновика (и будет очень долго). Зачем беспокоиться?

Аарон
источник
10
+1 Вопросу уже почти 15 месяцев, и вы первый, кто упомянул, что HTML 5 все еще черновик.
Gumbo
5
Хорошая точка зрения. Зачем беспокоиться? Это не похоже на то, как помощь сети помогает Microsoft. Следовательно, Silverlight и не очень хороший браузер.
BuddyJoe 03
10
@Gumbo - (первая) спецификация языка C не была завершена до 1989 года. Вы бы подождали до тех пор, чтобы использовать ее? К тому времени он захватил всю индустрию. Зачем беспокоиться? Я думаю, это зависит от того, хотите ли вы получить максимальную отдачу от того, что могут предложить современные платформы. В противном случае, почему бы просто не использовать HTML 3.2 или даже 2.0 навсегда?
Джастин
2
@Justin Нет. Также довольно часто стандарты - это просто запись того, что фактически уже является стандартом де-факто на практике.
Gumbo
4

Ознакомьтесь с руководством caniuse по всем функциям HTML 5 во всех браузерах и версиях, включая будущие версии.

dpan
источник
4

Вы можете использовать это, чтобы IE8 понимал / поддерживал основные теги HTML5.

<!--[if lt IE 9 ]> 
    <script type="text/javascript">
        var html5Elem = ['header', 'nav', 'menu', 'section', 'article', 'aside', 'footer'];
        for (var i = 0; i < html5Elem.length; i++){
            document.createElement(html5Elem[i]);
        }
    </script>
<![endif]-->
Альфонс
источник
2

Согласно http://msdn.microsoft.com/en-us/library/cc288472(VS.85).aspx#html , IE8 будет иметь "сильную" поддержку HTML 5. Я не видел, чтобы что-нибудь обсуждало, что именно подразумевает "сильная поддержка", но могу сказать, что да, некоторые вещи HTML5 будут перенесены в IE8.

Марк
источник
6
Что ж, IE8 отсутствует, и мы не видим "сильной поддержки HTML5", а Microsoft не известна обновлением, как другие более современные браузеры, поэтому любая "сильная поддержка" должна подождать до IE9, но Microsoft ничего не сказала про HTML5 для IE9 тоже.
Роб
2

Некоторые из других ответов здесь касаются добавления возможностей HTML5 в IE8 и другие браузеры. Они называются полифиллами, и мое любимое место для их поиска - здесь .

Джастин
источник