Javascript Firefox Mac对齐问题

Javascript Firefox Mac对齐问题,javascript,html,css,windows,firefox,Javascript,Html,Css,Windows,Firefox,我写了一个菜单,其中按钮的总宽度应始终与菜单栏的宽度相同。所以我用空格,在按钮上加上 它的作用是: Windows:FF IE6 IE7 IE8 Mac:SafariChrome 但是它在Mac上的Firefox上不起作用。有人有主意吗 例如: 编辑: 我采取的步骤是: 我计算空格 将其除以按钮数,然后四舍五入 将其与当前填充添加到按钮 为了确保每次向按钮添加填充时没有舍入问题,我从总空格中减去它,在最后一个li中添加总空格 因此,最后一个LI可能会减少或增加1或2个像素。因为您正在动态更

我写了一个菜单,其中按钮的总宽度应始终与菜单栏的宽度相同。所以我用空格,在按钮上加上

它的作用是: Windows:FF IE6 IE7 IE8 Mac:SafariChrome

但是它在Mac上的Firefox上不起作用。有人有主意吗

例如:

编辑:

我采取的步骤是:

  • 我计算空格
  • 将其除以按钮数,然后四舍五入
  • 将其与当前填充添加到按钮
  • 为了确保每次向按钮添加填充时没有舍入问题,我从总空格中减去它,在最后一个li中添加总空格

因此,最后一个LI可能会减少或增加1或2个像素。

因为您正在动态更改LI的宽度,所以它们的宽度值是浮点值,而不是整数。在我看来,浏览器的处理方式都不一样。计算完后,请尝试执行
Math.floor
功能。

查看
控制台的输出,它似乎不一定按照预期应用计算的填充。它似乎在计算
marLeft
38
(和
last
43
),但将
43
应用到每个
。我可能会离开,我只是在猜测您的
控制台
输出的含义

另外值得注意的是,在Safari中,我将其关闭了一个像素(最后一个菜单的
具有
左填充:39px
,而其他菜单具有
左填充:40px
,距离容器边缘一个像素)

编辑:我可能误解了您的
控制台
输出,Safari说
marLeft
35
,但应用了
40
(除了
上次


编辑2:我真的很感激控制台中有可以查看的信息。这是发布示例的正确方法。谢谢

我对值进行四舍五入,因为这可能会导致四舍五入问题,所以我从空白中减去我添加到每个li的值,在最后一个li上添加剩余部分。所以当我添加它时,我看不出它是一个浮点数。在Safari中,它们都在一条线上,而且由于右边框是白色的,所以它看起来不是关闭的。