简体   繁体   English

我们如何通过Javascript从CSS文件中删除填充?

[英]How do we remove padding from CSS file by Javascript?

I have library file where padding is defined for common column class. 我有一个库文件,其中为公共列类定义了填充。

[class*="col_"] {
  box-sizing: border-box;
  padding: 0 0.5rem 1rem;
  max-width: 100%; }

I don't want to remove it, in fact I want to override CSS where I want to remove padding style itself calling either by JavaScript or jQuery. 我不想删除它,实际上我想覆盖CSS,在这里我想删除通过JavaScript或jQuery调用的填充样式本身。

[class*="col_"] {
 box-sizing: border-box;
 max-width: 100%; }

使用jQuery显式设置元素的填充:

$("[class*=col_]").css("padding", 0);

You can create a class like: .no_padding {padding:0;} 您可以创建一个类似以下的类: .no_padding {padding:0;}

And then, you can add that class to the specific elements you want using javascript or jquery: 然后,您可以使用javascript或jquery将该类添加到所需的特定元素中:

// js
var element = document.getElementById("specific_element");
  element.classList.add("no_padding");

// jquery
$("#specific_element.col_x").addClass("no_padding"); 

You can select all elements that match that selector 您可以选择与该选择器匹配的所有元素

let elements = document.querySelectorAll("[class*=col_]");
elements.forEach(e => { 
     e.style.padding = '';
}

Or add a new style rule on the fly: 或即时添加新的样式规则:

let newStyle = document.createElement('style');
newStyle.id = Date.now(); //set a id for removing the style later if necessary
newStyle.innerHTML = `
    [class*="col_"] {
       box-sizing: border-box;
       max-width: 100%; 
    }`;

document.body.appendChild(newStyle);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM