【问题标题】:CSS rendering in same browsers in different OS在不同操作系统的相同浏览器中呈现 CSS
【发布时间】:2014-06-06 06:58:32
【问题描述】:

在设计网站时,我必须指定不同的 CSS 来在不同操作系统的相同浏览器中定位元素。例如,我为 linux、mac 和 windows 的 firefox 中的元素指定不同的像素。 chrome 也是如此。

我不得不使用 jquery(针对不同的操作系统)编写不同的 CSS。为什么跨不同操作系统的相同浏览器呈现不同的 CSS。有没有办法通过jquery以外的方式解决这个渲染问题?

【问题讨论】:

  • 我正在寻找的是,如果我有一些元素在 chrome 中完美对齐,那么我如何确保它们在 firefox 中也完美对齐?

标签: jquery html css google-chrome firefox


【解决方案1】:

每个浏览器都有一套它遵循的内置 CSS 规则; h1 元素的默认填充量等。

您可以使用“规范化”样式表(又名(CSS 重置),例如 this,将每个浏览器重置到同一点,以便您的 CSS 在所有浏览器中看起来都一样。

【讨论】:

  • 但是对于不同操作系统的相同浏览器,内置规则应该相同吗?
  • @Diffy 不一定。例如,OSX 和 Windows 上的字体呈现非常不同,因此字体边距等会在操作系统之间发生变化
  • 另外值得注意的是,您永远无法在所有浏览器中获得“像素完美”的所有内容。总会有细微的差别。只要用户界面在所有这些中都能正常工作,我会说没问题。
  • 我的目标不是让像素在浏览器中完美,而是在特定浏览器中完美对齐。使用 normalize.css,如果元素在 chrome 中完美对齐,它们在 firefox 中也会完美对齐吗?
  • 没有理由不这样做。
【解决方案2】:

你可以做 Browserhacks; CSS

Browserhacks 是来自互联网各地的浏览器特定 CSS 和 JavaScript hack 的详尽列表: Have a look here

CSS 浏览器选择器 巧妙的技巧帮助您解决 CSS hack: 你也可以have a look here

【讨论】:

  • 但这些都是 CSS 和 js 技巧。他们对我来说似乎很有趣并且会有所帮助,但不会解决我的问题
  • 而且还没有写出这些黑客的用途?我需要对它们中的每一个进行测试才能找出答案吗?
猜你喜欢
  • 2011-12-01
  • 2012-04-05
  • 2012-09-21
  • 1970-01-01
  • 2013-08-15
  • 1970-01-01
  • 1970-01-01
  • 2017-08-02
  • 1970-01-01
相关资源
最近更新 更多