我想知道这是否可能。
有这个元素
<div id="sample_id" style="width:100px; height:100px; color:red;">
所以我想删除宽度:100px; 和高度:100px;
结果将是
<div id="sample_id" style="color:red;">
任何帮助都会得到认可。 :)
答案 0 :(得分:54)
您可以使用纯Javascript编辑样式。除IE之外的所有浏览器都支持不需要库,您需要将其设置为''
而不是null
(请参阅注释)。
var element = document.getElementById('sample_id');
element.style.width = null;
element.style.height = null;
有关详细信息,请参阅MDN上的HTMLElement.style文档。
答案 1 :(得分:6)
var element = document.getElementById('sample_id');
element.style.removeProperty("width");
element.style.removeProperty("height");
答案 2 :(得分:2)
使用javascript
但这取决于你想要做什么。如果您只想更改高度和宽度,我建议:
{
document.getElementById('sample_id').style.height = '150px';
document.getElementById('sample_id').style.width = '150px';
}
要完全删除它,删除样式,然后重新设置颜色:
getElementById('sample_id').removeAttribute("style");
document.getElementById('sample_id').style.color = 'red';
当然,没有唯一的问题是你想要发生这种事件。
答案 3 :(得分:2)
更新:要获得更好的方法,请参阅same thread中的Blackus答案。
如果您不反对使用JavaScript和Regex,可以使用以下解决方案查找width
属性中的所有height
和style
属性以及replace
这些属性什么都没有。
//Get the value of style attribute based on element's Id
var originalStyle = document.getElementById('sample_id').getAttribute('style');
var regex = new RegExp(/(width:|height:).+?(;[\s]?|$)/g);
//Replace matches with null
var modStyle = originalStyle.replace(regex, "");
//Set the modified style value to element using it's Id
document.getElementById('sample_id').setAttribute('style', modStyle);
答案 4 :(得分:1)
$("#sample_id").css({ 'width' : '', 'height' : '' });
答案 5 :(得分:0)
就像这样使用
$("#sample_id").css("width", "");
$("#sample_id").css("height", "");
答案 6 :(得分:0)
在宽度和高度元素上指定自动与从技术上删除它们相同。使用原始Javascript:
images[i].style.height = "auto";
images[i].style.width = "auto";