Сообщение от Amphiluke
|
А что если желаемые значения CSS-свойств становятся известны только во время выполнения? С одной стороны, можно было бы перед применением стиля запомнить прежнее значение свойства, а потом восстановить его.
|
было бы целесообразно генерировать новые правила для таблицы стилей, и потом их убрать, когда они уже не будут нужны.
небольшая выдержка, чтобы не искать самому :
var stylesheet = document.createElement("style");
document.getElementsByTagName("script")[0].parentNode.appendChild(stylesheet);
stylesheet = stylesheet.sheet || stylesheet.styleSheet;
/**
* Добавит правило с указанным селектором и указанным текстом правила.
* @param selector
* @param cssText
* @return {CSSRule} Добавленное правило
*/
function addRule (selector, cssText) {
/** @type {CSSRuleList} */
var rules = stylesheet.cssRules || stylesheet.rules;
var index = rules.length;
if (stylesheet.insertRule) {
stylesheet.insertRule(selector + " " + "{" + cssText + "}", index);
} else {
stylesheet.addRule(selector, cssText, rules.length);
}
return rules[index];
}
С удалением правил из таблицы стилей я разбирался в этой теме :
Удаление элемента в "жидком" листе..