我試圖獲得內聯元素的真實樣式,但它始終將CSS應用到它。我不想修改我的CSS,太多的頁面依賴於它。jQuery:獲取內聯樣式不是CSS的正文
<body class="processed" style="padding-top: 157px ;margin-top: 0px;">
我的CSS
.processed{padding-top: 56px !important;}
JS:
$(function(){
var pad = $('body').css('padding-top');
$('body').attr('style','padding-top:'+ pad +' !important; margin-top: 0px;');
console.log('pad' + pad);
});
結果:body
與內嵌樣式56px
,而不是157px
...
!內聯樣式是CSS,它只是內聯CSS。你在問什麼? –
Javascript修改CSS總是得到當前元素的計算樣式。如果你有100個類規則,它不會顯示所有類的CSS,而是由於[css特定規則](https://developer.mozilla.org/en),元素當前正在服從的CSS規則-US/docs/Web/CSS/Specificity) –
通過將'!important'添加到您的css中,您可以覆蓋內聯樣式,因此它將爲56px。 – Banana