我正在开发一个小框架,可以使固定的设计流畅。 因此,尽管分辨率适合,窗口会调整大小。
我在px,em和amp;之间转换计算单位取得了很好的成功。 PT。但在大多数情况下,getComputedStyle返回符合百分比的元素的px值。
如何有效地获取“由”CSS定义的百分比单位? (提前考虑我需要区分字体%和盒子模型%)。
(请不要lodash或jQuery答案,需要纯粹的JS)
答案 0 :(得分:0)
如果元素(或其中一个父母)display
设置为none
,您可以使用javascript获取%值(如果以%分配。)fiddle < / p>
function getStyle(el, property) {
var a = document.getElementById(el);
a.style.display = "none";
if (a.currentStyle)
var b = a.currentStyle[property];
else if (window.getComputedStyle)
var b = document.defaultView.getComputedStyle(a, null)
.getPropertyValue(property);
a.style.display = "block";
return b;
}
console.log(getStyle('a', 'width'));
&#13;
#a {
width: 50%;
height: 200px;
}
&#13;
<div id="a">jdghjfgdshf</div>
&#13;