Существует доступ DOM к таблицам стилей, но это одна из тех вещей, которых мы склонны избегать, потому что IE нуждается в загрузке совместимости.
Лучшим способом, как правило, было бы косвенное инициирование изменения, используя простое изменение класса для предка:
td { padding: 0.2em 1.2em }
body.changed td { padding: 0.32em 2em }
Теперь просто $('body').addClass('changed')
и все обновления td
s.
Если вам действительно необходимо создать таблицы стилей:
var sheet= document.styleSheets[0];
var rules= 'cssRules' in sheet? sheet.cssRules : sheet.rules; // IE compatibility
rules[0].style.padding= '0.32em 2em';
Это предполагает, что рассматриваемое правило td
является первым правилом в первой таблице стилей.Если нет, то вам, возможно, придется искать его, повторяя правила поиска правильного selectorText.Или просто добавьте новое правило в конец, переопределив старое:
if ('insertRule' in sheet)
sheet.insertRule('td { padding: 0.32em 2em }', rules.length);
else // IE compatibility
sheet.addRule('td', 'padding: 0.32em 2em', rules.length);
Сам jQuery не предоставляет никаких специальных инструментов для доступа к таблицам стилей, но возможно, что есть плагины, которые могут.