Добавить правило в элемент <style> при помощи JavaScript довольно просто. А вот удалить определенное правило из множества - задачка посложнее. Как-то понадобилось мне ее решить, и я сделал это. Но, увы, решение мне вовсе не понадобилось в силу ряда причин. Так как жаль выкидывать в мусорную корзину полезные данные, запишу код в бложик. Нижеприведенный код ищет селектор span#delete_me и (если находит) удаляет все правило.
HTML и CSS:
<style id="ololo_css" type="text/css">a:link {color:blue;} span#delete_me {color:green;} a:hover {color:red;}</style>
JavaScript:
function del_rule() {
var styles = document.getElementById("ololo_css").sheet.cssRules;
var rule4check = "span#delete_me";
for (var i = 0; i < styles.length; i++) {
if (styles[i].cssText.search(rule4check) != -1) {
//console.log(styles[i].cssText); // содержимое правила
document.getElementById("ololo_css").sheet.deleteRule(i);
}
}
} // конец del_rule()
Вот.