繁体   English   中英

如何计算HTML元素的左边距

[英]how do I compute the margin-left of an HTML element

有没有办法编写一个javascript函数,给定任何HTML元素告诉我它的'margin-left'以像素为单位。 (我想无论算法如何,都可以重新发布以获得边距,顶部和底部)

一个解决方案是:

function(htmlElement) {
    return htmlElement.style.marginLeft;
}

但是只有在该html元素上应用marginLeft时才有效。

如果未明确设置,我该如何计算? 如果它没有明确设置像素?

您可以使用window.getComputedStyle()来完成此操作。

的jsfiddle

window.getComputedStyle(elem, null).getPropertyValue("margin-left");

因此elem.style.marginLeft获取应用的CSS值, getComputedStyle获取应用所有内容后的实际计算值。

getComputedStyle在IE8中不起作用,但有一堆polyfill可用:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM