как сделать css3 и html5 совместимый веб-сайт для всех браузеров, включая IE7 и более поздние - PullRequest
5 голосов
/ 20 августа 2011

Существует ли какая-либо единая платформа, с помощью которой я могу создать веб-сайт css3, html5, совместимый со всеми браузерами, включая IE7 и более поздние? Может ли http://html5boilerplate.com/ шаблон помочь мне в этом?

Ответы [ 4 ]

13 голосов
/ 07 октября 2011

Вы никогда не получите движок IE7 или IE8 для полной совместимости с HTML5, CSS3 и другими современными технологиями. Они просто не способны на это.

Однако есть некоторые хаки, инструменты и плагины, которые могут помочь вам в этом.

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

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

IE7.js Дина Эдвардса и Selectivzr - обе библиотеки Javascript, которые обеспечивают поддержку IE для многих селекторов CSS, которые отсутствовали в более старых версиях. Это позволяет вам писать таблицы стилей, не беспокоясь о том, что поддерживает IE. (IE7.js также исправляет ряд других глюков IE и тоже отсутствует)

CSS3Pie - это хак для IE, который добавляет поддержку CSS border-radius, градиентов и box-shadow.

На самом деле существует целая куча хаков по всем направлениям, все они направлены на добавление функций в более старые версии IE, которых в нем нет. На сайте Modernizr большой список: https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-Browser-Polyfills

Однако есть одна большая оговорка ко всему этому. Скорость. IE <= 8 - медленный браузер. У него медленный движок Javascript. Практически все эти хаки основаны на javascript. Возможно, вам не удастся запустить несколько из них на любом конкретном сайте, но попытка использовать их достаточно, чтобы дать IE что-то вроде полной поддержки HTML5 и CSS3, замедлит работу браузера до такой степени, что он станет непригодным для использования. </p>

Однако есть еще один подход к этому вопросу, и это плагин Google Frame для IE. Это в основном устанавливает весь браузер Google Chrome в IE. Пользователь по-прежнему использует оболочку IE, но веб-страница отображается так же, как в современной версии Chrome.

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

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

1 голос
/ 20 августа 2011

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

Проверьте: http://accessites.org/site/2007/02/graceful-degradation-progressive-enhancement/

И: http://diveintohtml5.ep.io/detect.html

Удачи.

0 голосов
/ 20 августа 2011

html5boilerplate вам не поможет.

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

Но .. если вы сузите свои требования до некоторых конкретных функций, таких как видео, аудио-теги, рисование на холсте, изящные CSS-эффекты, File API или другие, вы МОЖЕТЕ найти платформы, которые реализуют (или пытаются имитировать) их, с доступными технологии кросс-браузерным способом (более или менее).

0 голосов
/ 20 августа 2011

Modernizr - это библиотека JavaScript с открытым исходным кодом, которая помогает создавать веб-сайты следующего поколения на HTML5 и CSS3.

MS включает ее в шаблонные проекты ASP.net MVC

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...