2009-12-21 18 views
0

我想知道頁面中使用jquery的所有CSS設置。我知道,得到一些CSS的設置,我們做這樣的,如何使用jquery獲取所有css的設置?

$('#container').css("width") 

由於這一點,我試圖用$('*')讓所有的CSS設置,但不能成功。 請給我一些建議。

回答

1

如果你想與內聯CSS嘗試的元素:

$("[style]").each(function() { 
    for (var i=0; i<this.style.length; i++) { 
    console.log(this.style[i] + " = " + this.style.getPropertyValue(this.style[i])); 
    } 
}); 

注:此使用的JavaScript式的名字是按CSS規範,而不是那些在jQuery的css()(例如,「與容限用頂部「在CSS中,」marginTop「在css())。

如果您希望基於在網頁內部和外部樣式表中定義的內聯樣式和CSS規則應用於元素的所有樣式,那將會更加困難。

for (var i=0; i<document.styleSheets.length; i++) { 
    var css = document.styleSheets[i]; 
    for (var j=0; j<css.length; j++) { 
    console.log(css[j] + " = " + css.getPropertyValue(css[j])); 
    } 
} 
+0

想知道爲什麼這是downvoted ... – cletus 2009-12-21 02:58:03

0

對我來說,你的問題不夠清晰地回答:

你至少可以像找到全局樣式表。你想達到什麼目的?

所有的CSS設置可能意味着很多不同的事情。

  • 你想瀏覽器,你要適用原來的CSS類(不計算值但.css文件申報值)
  • 做的或計算出的CSS屬性+所有的人只有最具體比賽
  • 你想原來的直列CSS花式
  • 你要全部納入樣式
  • 列表你真的希望所有的屬性或只選擇其
  • 你想這個FO r頁面上的每一個元素或只爲特定的
  • ....
相關問題