【问题标题】:In Chrome user agent stylesheet, how does 2px = 0em?在 Chrome 用户代理样式表中,2px = 0em 怎么算?
【发布时间】:2013-03-19 10:12:17
【问题描述】:

我花了很长时间试图删除选择框左侧的额外间距,在 Chrome 开发者工具中,我终于看到用户代理样式表添加了 2px 的左边距(在计算样式下查看)。但是,当我单击 margin-left 下拉菜单以查看该样式的定义位置时,它说它被定义为 0em,如下面的屏幕截图所示...有人可以向我解释一下吗??

【问题讨论】:

  • 我无法重新创建这个,您有指向您网站的链接吗?
  • 零,在 CSS 中,等于所有单位。这就是为什么你可以在任何有大小的地方都有一个无单位的零。您必须缺少其他一些 CSS 规则。
  • 我也有这个问题 - 完全相同的问题,它导致到处都有对齐问题。我可以将边距设置为 0,这可以解决它,但如果用户代理样式表已经指定 0,我不应该这样做。

标签: css google-chrome stylesheet margin user-agent


【解决方案1】:

我也遇到了这个问题 - 设置一个明确的高度解决了这个问题。

原因:

"*固有边距的目的是防止相邻控件相互碰撞。特别是对于圆形控件,这看起来很糟糕。您看到值发生变化的原因是我们只在我们认为它时才设置固有边距不会破坏页面的布局。如果作者在控件上指定了明确的高度/宽度,那么我们假设设计者需要像素精确的控制,因此我们关闭边距以避免破坏页面布局。

这个功能最初是由谷歌首页这样的案例所激发的,它有两个相互对接的按钮。他们现在在现代版本的页面上有间距,但过去没有。这在 Web 上也随处可见,尤其是按钮旁边的文本字段。它们最终在 OS X 上看起来很糟糕(它们在 Windows 上看起来也很糟糕,只是没有那么糟糕)。*"

来源:http://code.google.com/p/chromium/issues/detail?id=128306

【讨论】:

    【解决方案2】:

    从该屏幕截图中,看起来有这样的规则: margin: 2px 2px 4px 2px 覆盖用户代理最初指定为 0em 的内容

    【讨论】:

      猜你喜欢
      • 2011-11-12
      • 2013-12-05
      • 1970-01-01
      • 2014-01-14
      • 2011-11-19
      • 2012-09-16
      • 2021-09-14
      • 2013-08-03
      相关资源
      最近更新 更多