2011-11-03 32 views
35
<div class="views" style="position: relative; width: 421px; height: 15px; overflow: hidden;"> 
TEST TEXT 
</div> 

Làm thế nào để loại bỏ thuộc tính chiều rộng thuộc thuộc tính kiểu bằng cách sử dụng jQuery?Làm thế nào để loại bỏ thuộc tính chiều rộng mà là theo thuộc tính phong cách sử dụng jQuery?

Tôi biết removeAttr ("chiều rộng");

Nhưng nó sẽ không làm việc ở đây vì chiều rộng là con của thuộc tính style

Trả lời

49

Bạn có thể sử dụng:

.css('width', 'auto') 
+1

Tôi thường làm $ nút [0] .style.width = '' cho các phần tử đơn lẻ. Hầu hết thời gian tôi cần đặt lại chiều rộng hoặc chiều cao cho mục đích hoạt ảnh trên một phần tử –

49

Dễ dàng như

$('div.views').css('width', ''); 
5

Không sử dụng inline phong cách. Sử dụng các lớp học.

$(".views").removeClass("a"); 
$(".views").addClass("b"); 

Nhưng nếu bạn thực sự muốn, bạn có thể làm như sau:

$(".views").css("width", ""); 
+0

Tôi không sử dụng nội tuyến, nhưng tôi vẫn muốn xóa chiều rộng nội tuyến đã được thêm trước đó qua js. –

+1

Nếu chiều rộng đang được đo ví dụ cho một bảng đáp ứng, nơi các cột cần phải được đo sau đó bạn không thể sử dụng các lớp học. –

0

Tôi nghĩ rằng bạn phải cố gắng này:

$(".views").removeAttr('style').attr('style','position: relative; height: 15px; overflow: hidden;');

+0

Offcourse cách tốt nhất là sử dụng Classes hơn Inline Styles.You có thể định nghĩa 2 lớp với thuộc tính khác nhau và thêm hoặc loại bỏ chúng khi cần thiết. –

+0

Nếu chiều rộng được đo dựa trên chiều rộng của thứ gì đó khác thì bạn không thể sử dụng một lớp. Ngoài ra, việc loại bỏ thuộc tính kiểu có thể xóa các kiểu nội tuyến khác mà bạn đã đặt, ví dụ bằng cách sử dụng .hide() hoặc .show() –

16

này cũng đã làm việc ở đây:

$(".views").width(""); 
1

Bạn có thể làm điều đó với chỉ CSS:

div[style="position: absolute; top: -136px; overflow: auto; width:1241px;"] { 
width: 0px !important; 
display: none !important; 

}

Các vấn đề liên quan