【问题标题】:Safari margin percentage errorSafari 保证金百分比错误
【发布时间】:2013-10-29 20:03:35
【问题描述】:

当我以绝对位置的百分比给出边距时,在 Firefox 和 chrome 中一切正常 margin:50% 0 0 60%;position:absolute;z-index:5;.

FF/chrome 根据屏幕尺寸计算百分比。但在 Safari 中,它似乎是在计算身体总高度的边距百分比(不确定!)。所以我尝试了 calc() 和 vw

margin:calc(50vw * 0.54) 0 0 calc(50vw * 0.60);position:absolute;z-index:5;

在 safari 中没有效果。我想我遗漏了一些东西。请帮助

编辑: 新增 jsfiddle:http://jsfiddle.net/xjSx3/3/ 请看 ff/chrome 和 safari 的区别

【问题讨论】:

    标签: css cross-browser safari position margin


    【解决方案1】:

    calc() 仅受最新版本的 Safari 支持(带有 -webkit- 前缀)

    http://caniuse.com/calc

    仅部分支持视口单元,这意味着可能会有奇怪的行为

    http://caniuse.com/viewport-units

    【讨论】:

    • 感谢您的信息,但问题没有通过 safari 中的直接保证金百分比解决?!
    • 对不起 - 我的意思不够清楚。关键是使用 calc 和 viewport-units 是不可靠的,也许您应该尝试找到另一种方法来实现您所需要的?此外,您发布的第一行似乎在 Chrome (v 30.0.1599.101) 和 Safari (v 6.0.5) jsfiddle.net/xjSx3 中以完全相同的方式工作 - 您到底想要做什么?
    • 嗨 benedikt,再次感谢您的努力和帮助,我已将小提琴 jsfiddle.net/xjSx3/3 修改为我的。您可以看到 ff/chrome 和 safari 之间的边距差异。您可以看到边距看起来比 ff/chrome 增加了一倍。我完全陷入了这个问题。
    • 你为什么要使用边距?你不应该使用上/左/右/下吗?查看更新的小提琴jsfiddle.net/xjSx3/5
    • 覆盖 div 可以用 jquery 函数点击,如果我们使用 top/left/right 我们不能点击。我想你应该看到我的网站,192.185.56.215/~wwwtheam/demo/lookbook.html
    猜你喜欢
    • 2013-10-30
    • 2011-04-23
    • 1970-01-01
    • 2018-11-02
    • 2022-01-24
    • 1970-01-01
    • 2016-04-14
    • 2014-07-29
    • 2023-03-26
    相关资源
    最近更新 更多