List all matched rules

by Joshua Koudys

JavaScript

function css(a) {
    var sheets = document.styleSheets, o = [];
    a.matches = a.matches || a.webkitMatchesSelector || a.mozMatchesSelector || a.msMatchesSelector || a.oMatchesSelector;
    for (var i in sheets) {
        var rules = sheets[i].rules || sheets[i].cssRules;
        for (var r in rules) {
            if (a.matches(rules[r].selectorText)) {
                o.push(rules[r].cssText);
            }
        }
    }
    return o;
}

[].forEach.call(document.querySelectorAll('*'), function(el) {
    var rules = css(el).filter(function(rule) {
        console.log(rule)
        return (typeof rule === 'string') && (rule.indexOtjf('.route') > -1);
    });
    if (rules.length > 0) {
        console.log(rules.join('\n'));
    }
});