我想在DOM中獲取一個元素,然後查找我的CSS文件中的哪些規則正在促成它的外觀。類似於螢火蟲或webkit檢查員所做的。有沒有辦法在JavaScript中做到這一點?是否可以通過JavaScript從HTML節點中找到CSS規則?
更新:
我應該提供一個約束,一個具體的例子 - 我只是在基於WebKit瀏覽器實現這一興趣使跨瀏覽器的困難是沒有這麼多的問題。我特別想要實現的是這個。比方說,我有一個樣式表如下:
div {
background: #f0f0f0;
}
.example {
padding: 10px;
}
然後讓我們說一些HTML代碼:
<div id="test" class="example">
<hgroup>
<h1>Test</h1>
<h2>A sample file to play with.</h2>
</hgroup>
<ul class="sample">
<li id="item_1">Item 1</li>
<li id="item_2">Item 2</li>
</ul>
</div>
所以後來在JavaScript中我希望能夠有一種能夠找到一個函數從那個CSS選擇器樣式對象:
get_selectors_for(document.getElementById('test'))
// should return:
// ['div','.example']
如何複雜的是它反向查詢,選擇知道我們只需要擔心WebKit的,而不是所有的瀏覽器?
我應該提到我只對在webkit中這樣做感興趣。沒有這麼多的瀏覽器。 – 2010-12-19 12:19:57
[查找適用於元素的所有CSS規則]的可能重複(http://stackoverflow.com/questions/2952667/find-all-css-rules-that-apply-to-an-element) – Bergi 2013-09-24 13:31:22