【发布时间】:2016-10-17 19:35:00
【问题描述】:
我目前正在处理一个包含一系列 svg 的页面,这些 svg 是使用(坦率地说令人惊叹的)d3.js 动态创建的。
一切都很好,除了我在 Safari(Mac OS X 上的版本 9.1.1 (10601.6.17)(优胜美地,可在 El Capitan 上使用最新的 Safari 9.1 重复))中遇到一个奇怪的问题,导致事情错位。我有两个彼此相邻的 svg,出于所有意图和目的,它们具有所有相同的边距、填充等定义,但其中一个正确放置(具有 14px 的填充顶部),而另一个(理论上也具有14px padding-top) 似乎完全忽略了这种填充并高出 14px。如下图所示,我使用了 Safari 内置的开发者工具,并且填充似乎确实定义正确,只是决定不关心。
相比:
值得注意的是,这个问题在我所拥有的这些 svg 对中重复出现,因此它不仅仅发生在一个实例中(在两张图片中,您可以看到相同的现象反复出现)。
另一个奇怪/有趣的元素是,当我缩小(使用 ⌘ + ⇧ + -)时,问题似乎自行解决了。这只发生在默认缩放级别。
非常感谢任何帮助/指针。我不会以任何有意义的方式将自己描述为前端开发人员,我这样做是出于必要,所以我完全有可能在做一些非常非常愚蠢的事情。
这一切都可以在 Chrome 上完美运行。
【问题讨论】:
-
我曾经遇到过一个问题,即我在我的 css 中使用了小数,而 safari 会将它们向上或向下舍入。希望对您有所帮助。
-
感谢@olivier 的回复。我已经在下面发布了我遇到的解决方案,如上所述,您的建议使我朝着正确的方向前进,所以谢谢。我还确保除了填充之外,我的宽度和高度等都是整数。