function queryStyleRule(selector) {
var sheets = document.styleSheets,
j, i = sheets.length,
rules = [];
for( ;i--; ) {
try {
rules = sheets[i].cssRules ? sheets[i].cssRules : sheets[i].rules ? sheets[i].rules : [];
} catch(_e_) {
rules = [];
}
for(j = rules.length; j--; ) {
var sel = rules[j].selectorText.replace(/(^|[^:]):(after|before)/i, '$1::$2');
if (sel.toLowerCase() === selector) {
return rules[j];
}
}
}
var style = document.documentElement.firstChild.appendChild(document.createElement('style'));
try {
selector = selector.replace(/::(after|before)/, ':$1');
if (style.sheet) {
style.sheet.insertRule(selector + '{}', 0);
return style.sheet.cssRules[0];
} else if (style.styleSheet) {
style.styleSheet.addRule(selector, ' ', 0);
return style.styleSheet.rules[0];
}
} catch(_e_) {
style.parentNode.removeChild(style);
}
return null;
}
queryStyleRule('body::after').style.content = '"Hello World!"';;
alert(queryStyleRule('body::after').style.content);