Разрушение сценариев Js для переноса поведения HTML5 / CSS3 в старые браузеры (IE) - PullRequest
3 голосов
/ 26 сентября 2011

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

Вот где я нахожусь с моим текущим пониманием:

  • Respond.js : поддержка медиазапроса обратно в IE6.
  • Selectivizr : селекторы CSS и псевдоселекторы?
  • HTML5shiv : добавляет элементы HTML5 обратно в IE6
  • CSS3Pie : добавляет определенные свойства css3 обратно в IE6: border-radius, box-shadow, linear - градиенты.
  • IE9.js : прозрачность png к IE5.5, «много других проблем с html / css» ???
  • Modernizr : Как я понимаю,это обнаружение для поддержки расширенных функций, и вам решать, что делать, когда функции не обнаружены.Хотя я понимаю, что он добавляет элементы HTML5 для всех браузеров
  • HTML5 Boilerplate : нормализатор CSS, не совсем уверен, что еще и как он относится к другим.
  • Head.js : Веб-сайт утверждает, что он делает все, но я не совсем уверен, что он делает, кроме того, что его метод загрузки js якобы значительно превосходит (я думаю, мне это кажется слишком хорошим, чтобы быть правдой).

Первые 4, я почти уверен, что я понимаю, последние 4, я немного неуверен в том, что именно они делают.Мне также было бы интересно узнать, насколько они надежны и как они влияют на загрузку страниц и т. Д., А также нужно ли вносить изменения в html и css.

Мне очень интересноЯ знаю, что есть проблемы с совместимостью, и предлагают ли большие объединенные библиотеки какую-либо поддержку для них: css3-селекторы / классы (включает ли это зависание, например, на ссылках?), прозрачные pngs, медиа-запросы, html5элементы (а как насчет аудио и видео)?

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

1 Ответ

3 голосов
/ 26 сентября 2011

Лучший список этих вещей, которые я знаю, поддерживается парнями, которые пишут Modernizr .

У них есть страница в их вики, где перечислены практически все известные "полифиллы" (как они знают).Смотрите здесь: https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-Browser-Polyfills

Имейте в виду, что независимо от того, насколько умны эти взломы, всегда будет фундаментальная проблема, заключающаяся в том, что они пытаются заставить браузер делать вещи, которые он не поддерживает,Как правило, вы можете избежать использования одного или двух из них, но чем больше вы пытаетесь сделать, тем хуже будет производительность (и IE8 не совсем быстрый!)

Кроме того, изКонечно, большинство из них только дадут приблизительные значения реальной функциональности.У большинства из них есть недостатки и проблемы, которых просто невозможно избежать (хорошим примером этого является страница «Известные проблемы» сайта CSS3Pie).

...