示例:
我想使用javascript / jquery或我必须使用的任何方法来删除 left:0; 方面。我没有选择打开文档进行编辑或删除的选项。有任何想法吗?请注意,该类中还有其他样式,我只想删除 left:0; 方面,而其余部分保持不变。
答案 0 :(得分:4)
元素的style属性可以覆盖其CSS类属性。 left: auto
还将把元素的left属性重置为默认值。
可以在Javascript中这样设置元素的样式:
Element.style.[CSS property] = [value]
<span id="someId">Span</span>
<script>
document.getElementById("someId").style.color = "#aeb";
</script>
它的jQuery等效于(一个CSS属性):
$([selector]).css([CSS property], [value]);
$('#someId').css("color", "#aeb");
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<span id="someId">Span</span>
对于许多CSS属性:
$([selector]).css({[CSS property]: [value], [CSS property]: [value]});
$('#someId').css({"color":"red", "font-size":"1.5em", "position":"absolute", "top": "25%", "left": "25%"});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<span id="someId">Span</span>
<style>
.className {
left: 0;
position: absolute;
}
</style>
<span class="className">Span.className</span><br/>
<span class="className">Span.className</span><br/>
<span class="className">Span.className</span><br/>
<span class="className">Span.className</span><br/>
<span class="className">Span.className</span><br/>
<span style="left: 0; position: absolute;">Span with left:0 and position:absolute</span>
<script>
var elems = document.getElementsByClassName("className");
for(let i = 0; i < elems.length; i++){
elems[i].style.left = "50px";
}
</script>
要覆盖元素的所有先前设置的CSS属性,可以使用all: initial
,将所有CSS属性设置为其初始值。
<style>
.someClass{
position: fixed;
color: red;
background-color: dodgerblue;
font-size: 3em;
margin: 20px;
}
</style>
<span class="someClass">Span.someClass</span>
<span class="someClass" style="all: initial;">Span.someClass all:initial</span>
答案 1 :(得分:2)
使用jquery,您应该可以轻松完成以下操作:
$('.className').css({'left': 'auto'});
或者,如果该类并不是那么重要,则可以这样删除它:
$('.className').removeClass('className');
您可以在CSS中用另一个值覆盖它,也可以使用答案第一部分中提到的jQuery相同的东西。
答案 2 :(得分:1)
答案 3 :(得分:1)
这是两种不同的方法。
如果这是该类中唯一的样式属性,则可以从使用该类的所有元素中删除该类。
jQuery示例:
OTHER
CSS中$(".className").removeClass("className").addClass("anotherClass");
的默认值为auto,因此您可以为所有这些元素覆盖CSS。
jQuery示例:
left
答案 4 :(得分:1)
尝试这样:
$('.className').remove();
答案 5 :(得分:0)
由于它具有值,因此将其设置为空白将使其不作任何值,并且将跳过/忽略css属性。 解决方案:
$('.className').css('left',' ');
如果该属性仍被读取为0,则必须将!important应用于.css();。覆盖它。