2008-09-17 23 views
1

是否有工具可以为我找到所有在我的HTML中引用的实际上不存在的CSS类?查找不存在的样式引用

即。如果我在我的HTML中有< ul class =“topnav”/ >,并且topnav类不存在于任何引用的CSS文件中。

这与SO#33242类似,它询问如何找到未使用的CSS样式。这不是重复的,因为该问题询问哪些CSS类不被使用。这是相反的问题。

+1

这是一个重复的SO#33242 http://stackoverflow.com/questions/33242/how-can-i-find-unused-images-and-css-styles-in-a-website – 2008-09-17 02:31:33

+0

重新打开。对不起 - 我没有意识到你在问另一个问题的反面。 – 2008-09-17 03:14:24

+0

他们都是有效的问题,但如果他们的措辞有点不同,他们可能会合并,因为他们都是同一问题的两个方面。只是一个想法:) – 2008-09-17 11:03:20

回答

4

你可以把这个JavaScript中,可以为您执行此任务的页面:

function forItems(a, f) { 
    for (var i = 0; i < a.length; i++) f(a.item(i)) 
} 

function classExists(className) { 
    var pattern = new RegExp('\\.' + className + '\\b'), found = false 

    try { 
    forItems(document.styleSheets, function(ss) { 
     // decompose only screen stylesheets 
     if (!ss.media.length || /\b(all|screen)\b/.test(ss.media.mediaText)) 
     forItems(ss.cssRules, function(r) { 
      // ignore rules other than style rules 
      if (r.type == CSSRule.STYLE_RULE && r.selectorText.match(pattern)) { 
      found = true 
      throw "found" 
      } 
     }) 
    }) 
    } catch(e) {} 


    return found 
} 
1

Firefox中的错误控制台。虽然,它给出了所有 CSS错误,所以你必须仔细阅读它。