4

我有一个这样的css类:

.open-drawer {
  transform: translateX(0px);
  border-left: 1px solid grey;
  margin-left 3px;
}

这个类被添加到一个 div 上,当用户单击一个按钮时,它会将其滑出到视图中。margin-left说它是在 IE11/Edge 开发者工具中计算出来的,它没有被覆盖或任何东西,但实际上并没有出现在浏览器中。

这是特定于 IE 和 Edge 的,在 Chrome 和 Firefox 中它按预期工作。

真正奇怪的是,当我在 IE/Edge 开发人员工具中关闭和再次打开 margin-left 时,它突然修复/应用自身并按预期显示。

这些短片有助于查看边距在 Chrome 中可见,但在 IE 中不可见。边距最明显的是双线之间的间隙,即打开抽屉的左边框。在 Chrome 中,我们看到了这一点,但在 IE 中,直到我们关闭并打开 devtools 中的属性,如视频所示:

我有一种感觉,这可能与渲染引擎进行布局的时间有关,也许变换/翻译正在影响它,但真的不知道。不确定如何进一步缩小范围,Trident 或 EdgeHTML 的源代码是专有的。

有什么想法吗?

4

1 回答 1

-3

刚刚打开开发工具时它是否可以在realod上工作?

如果您的代码中有 console.log,但开发工具已关闭 - IE 返回错误。您需要编码 var console = { log : function(t){}}; 在您的 js 开头的某处或删除所有控制台日志。


这是已知问题之一,也许我没有正确理解您的任务。

于 2017-08-11T13:11:16.790 回答