Thật dễ dàng để đặt các giá trị CSS nội tuyến bằng javascript. Nếu tôi muốn thay đổi chiều rộng và tôi có html như thế này:
<div style="width: 10px"></div>
Tất cả những gì tôi cần làm là:
document.getElementById('id').style.width = value;
Nó sẽ thay đổi các giá trị biểu định kiểu nội tuyến. Thông thường, đây không phải là vấn đề, vì kiểu nội tuyến ghi đè biểu định kiểu. Thí dụ:
<style>
#tId {
width: 50%;
}
</style>
<div id="tId"></div>
Sử dụng Javascript này:
document.getElementById('tId').style.width = "30%";
Tôi nhận được như sau:
<style>
#tId {
width: 50%;
}
</style>
<div id="tId" style="width: 30%";></div>
Đây là một vấn đề, bởi vì tôi không chỉ không muốn thay đổi các giá trị nội dòng, Nếu tôi tìm kiếm chiều rộng trước khi đặt nó, khi tôi có:
<div id="tId"></div>
Giá trị được trả về là Null, vì vậy nếu tôi có Javascript cần biết chiều rộng của thứ gì đó để thực hiện một số logic (tôi tăng chiều rộng lên 1%, không phải giá trị cụ thể), sẽ nhận lại Null khi tôi mong đợi chuỗi "50% "không thực sự hiệu quả.
Vì vậy, câu hỏi của tôi: Tôi có các giá trị trong kiểu CSS không nằm trong dòng, làm cách nào để lấy các giá trị này? Làm cách nào tôi có thể sửa đổi kiểu thay vì các giá trị nội dòng, đã cho một id?