我們正在使用第 3 方支付網關,它的 CSS 與我們的代碼相混淆。它添加了以下屬性以將所有列設定為填充 0。
[class*=col-] {
padding: 0;
}
我應該如何洗掉這個填充屬性?我不想要這個填充屬性。
uj5u.com熱心網友回復:
重置
[class*=col-] {
padding: initial;
}
確保樣式檔案在第三方檔案之后鏈接,例如:
<head>
<link rel="stylesheet" href="third party">
<link rel="stylesheet" href="style that have padding initial">
<!--OR-->
<style>
[class*=col-] {
padding: initial;
}
</style>
</head>
當多個宣告具有相同的特異性時,CSS 中的最后一個宣告將應用于元素。---特異性 - Mozilla
筆記
如果這不起作用,!important請在這樣的樣式之后撰寫
[class*=col-] {
padding: initial !important;
}
移除
您可以使用JS洗掉屬性:removeProperty(),
重新設定
或者只是在您想要的任何地方設定填充并!important最后添加。
但,
當
important在樣式宣告上使用規則時,此宣告將覆寫任何其他宣告。盡管在技術上!important與特異性無關,但它直接與之互動。但是,使用!important是不好的做法,應該避免使用,因為它會破壞樣式表中的自然級聯,從而使除錯變得更加困難。當兩個與規則沖突的宣告!important應用于同一元素時,將應用具有更高特異性的宣告。
因此,僅當您像您的案例一樣編輯外部插件/庫時才使用它:
僅在覆寫外部 CSS(來自外部庫,如 Bootstrap 或 normalize.css)的特定于頁面的 CSS 上使用 !important。
資源
特異性 - Mozilla
uj5u.com熱心網友回復:
你不能真正洗掉一個屬性。你只能寫一個選擇器給它一個不同的值。
將其設定為initial應該使元素恢復其默認值。
它不會導致它恢復到您應用的早期樣式。如果你想要,那么你應該通過你添加它的選擇器的特性來覆寫原始分配。
uj5u.com熱心網友回復:
變數
你可以這樣做:
.my-class[class] /* for specificity */ {
padding: var(--padding);
}
然后為每個帶有.my-class類的標簽做出--padding你的選擇
或顯而易見的
.my-element[class] {
padding: [padding]
}
uj5u.com熱心網友回復:
也許您正在尋找 CSS removeProperty()?
CSSStyleDeclaration.removeProperty() 方法介面從 CSS 樣式宣告物件中洗掉屬性。
在這里查看更多
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/413005.html
標籤:
下一篇:CSS不能影片旋轉
