javascript - 当与 flex row-reverse 一起使用时,scrollWidth 返回 clientWidth 而不是实际的内容宽度

标签 javascript css internet-explorer firefox dom

请看这个插件:http://plnkr.co/edit/OXm4T2i0tw6UOEwaDSkx?p=preview

在 Chrome 中,容器 scrollWidth 值为 1616px(正确)。在 Firefox 和 IE11 中,它是 940px(容器本身的宽度,而不是内容的宽度)。

如果我将容器的 flex-direction 设置为 row 而不是 row-reverse,一切正常。

这是 Firefox 和 IE 中的错误吗?我该如何解决或解决这个问题?

谢谢。

最佳答案

作为变通方法,我在 FF 和 Edge 中成功地测试了它,我首先更改了 flex-direction 属性,读取值,然后重置属性。

Updated Plnkr

var container = document.querySelector('.container');
container.style.flexDirection = "row";
var temp = container.scrollWidth;
container.style.flexDirection = "row-reverse";
alert (temp + ' ' + container.scrollWidth);

关于javascript - 当与 flex row-reverse 一起使用时,scrollWidth 返回 clientWidth 而不是实际的内容宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40999762/

相关文章:

javascript - 如何仅显示基于路由更改的 react 组件?

javascript - $(文档).ready(函数(){});页面底部的vs脚本

javascript - Chrome 和 IE 中的 Ctrl F/查找功能可修改布局

css 选择器、IE 和 html 文档类型

Javascript比较两个日期时间

javascript - 哪些 Knockout.js 绑定(bind)是 "Two-way"?

javascript - 从 JavaScript Canvas 对象创建一个按钮

html - 居中文本时如何继承父div?

javascript - 旋转字符的 HTML 按钮

JQuery(可能是 SWFObject)在 IE 7.0.5730.13 或 8.0.6001.18702 或 8.0.7100.0 中没有执行应有的操作,但在 7.0.5730.11 中工作