JS polyfill CSS дочерний селектор для IE6 - PullRequest
2 голосов
/ 11 февраля 2012

Я ищу полифилл для добавления селектора > в IE6. Я знаю о Selectivizr, но я не хочу включать все это в это одно правило. Есть ли какие-нибудь простые сценарии для этого? У меня есть JQuery, так что это может быть включено.

Ответы [ 3 ]

3 голосов
/ 11 февраля 2012

jQuery будет работать с дочерним селектором независимо от браузера.Таким образом, вы можете использовать jQuery для ручного применения стилей в качестве класса при загрузке страницы.

jQuery('parent>child').addClass('parent-child-class');

1 голос
/ 16 февраля 2012
.example * {background: #00f; }
.example * * {background: none; }

Результат будет примерно таким:

.example > * {background: #00f; }

Но будьте осторожны со спецификой селекторов.

Более удобный способ - добавить дополнительные классы для IE6 через JavaScript / jQuery.:

$('.example > *').addClass('example-child');
0 голосов
/ 09 апреля 2012

Единственный другой полифилл, который я знаю для старых версий IE, который делает подобные вещи, это Библиотека IE7.js Дина Эдвардса .(и последующие библиотеки ie8.js и ie9.js).

IE7.js - это библиотека, выпущенная еще тогда, когда IE6 была текущей версией.Его целью было заполнить как можно большую часть функциональности, доступной в новых браузерах, которая отсутствовала в IE6.Он назывался «IE7.js» как способ сказать «в отсутствие выпуска новой версии Microsoft, это моя попытка привести IE в соответствие с современными стандартами».

IE8.js и IE9Впоследствии были выпущены файлы .js, вскоре после выпуска IE7 и IE8.

IE7.js включает в себя полифилы для многих отсутствующих функций IE6, включая селектор >.

Если вы не хотите использовать Selectivizr, то это единственная из известных мне библиотек, которая делает то, что вы хотите.

Надеюсь, это поможет.

...