Javascript getComputedStyle报告Chrome/Safari/Firefox和IE11之间的不同高度

Javascript getComputedStyle报告Chrome/Safari/Firefox和IE11之间的不同高度,javascript,internet-explorer,getcomputedstyle,Javascript,Internet Explorer,Getcomputedstyle,这让我一整天都有点紧张,我一直无法找到其他人记录这种差异的地方 window.getComputedStyle(el).height 有关演示,请参见 我希望window.getComputedStyle()在所有浏览器之间返回相同的计算高度值。Internet Explorer 11正在做一些不同的事情。(实际上,IE9和IE10也是如此,但IE11是我第一个可以使用开发工具的工具。) 对于所有其他浏览器,计算的高度是css中设置的高度,无论它是在样式表中还是在textarea元素的内联中

这让我一整天都有点紧张,我一直无法找到其他人记录这种差异的地方

window.getComputedStyle(el).height
有关演示,请参见

我希望window.getComputedStyle()在所有浏览器之间返回相同的计算高度值。Internet Explorer 11正在做一些不同的事情。(实际上,IE9和IE10也是如此,但IE11是我第一个可以使用开发工具的工具。)

对于所有其他浏览器,计算的高度是css中设置的高度,无论它是在样式表中还是在textarea元素的内联中

IE11忽略了框大小:边框框声明,并减去了填充和边距,我认为这是不正确的


这是一个错误吗?我做错了什么吗?IE11以不同的方式返回计算值是一个众所周知的事实吗?

Element.height指定内容区域内的高度,不包括填充或边框。这里有更多关于它的信息()

如果有可用的选项,我建议使用jQuery的$el.outerHeight()。

使用polyfill 有两种polyfills修复了此错误:

  • 看起来它解决了这个问题


    我对IE11也有同样的问题,它忽略了
    框大小:边框框height
    值比Chrome报告的值小


    我发现在IE11和Chrome中报告了正确的高度(正确地观察
    框大小:边框框;
    )。这就解决了我的问题。

    你有没有得到关于这个问题的更多信息以及如何解决这个问题?
    //SO says that I must add code here, but it's too long
    
    //look at demo