mã của tôi như thế này:javascript: nhận được giá trị prop css với đơn vị
#image_1 {
position: absolute;
top: 3vw;
}
thử của tôi: http://jsfiddle.net/z8k6t3fb/1/
Tôi muốn có được '3vw'
Có thể?
mã của tôi như thế này:javascript: nhận được giá trị prop css với đơn vị
#image_1 {
position: absolute;
top: 3vw;
}
thử của tôi: http://jsfiddle.net/z8k6t3fb/1/
Tôi muốn có được '3vw'
Có thể?
Bạn có thể lặp document.styleSheets
, .cssRules
, nếu .selectorText
phù hợp với chọn thành phần, chọn quy tắc từ .style
tài sản
window.onload = function() {
var element = document.getElementById("image_1");
var prop = "top";
var styles = document.styleSheets;
for (var j = 0; j < styles.length; j++) {
var rules = document.styleSheets[j].cssRules;
for (var i = 0; i < rules.length; i++) {
if (rules[i].selectorText === "#" + element.id) {
console.log(rules[i].style[prop])
}
}
}
}
#image_1 {
position: absolute;
top: 3vw;
}
<div id="image_1">hello</div>
Điều này có hoạt động ngay cả khi bộ chọn không giống nhau không? –
@PraveenKumar Không chắc chắn ý của bạn là gì? – guest271314
Ở đây bạn đang trực tiếp khớp '# image_id'. Điều gì xảy ra nếu bộ chọn trong CSS là '.image img' hay gì đó? Giải pháp này có hiệu quả không? –
Tôi không nghĩ rằng đó là có thể. Bạn có thể lấy kiểu nội tuyến hoặc giá trị được tính. –
http://stackoverflow.com/questions/6338217 –