6

其他设计师如何规范跨浏览器的填充和边距。我已经尝试过 CSS 重置(目前使用的是 YUI),但我仍然遇到很多不一致的地方。

对于某些元素,对于某些浏览器,将填充或边距设置为 0px 将触发浏览器使用由该浏览器确定的默认填充和边距。有没有办法在所有浏览器中硬重置填充或边距,以保持一致的外观?


更新

从额外的研究和这里的反馈来看,让网站在不同的浏览器上看起来完全一样几乎是不可能的。我想我会坚持使用 CSS 重置并尝试更好地规划我的网站。

我不确定如何克服覆盖样式设置的默认浏览器机制,这样做可能会花费太多精力。

4

3 回答 3

1

这通常通过 CSS 重置来解决,但并非所有这些都是完整的。在某些浏览器上,整个主体必须​​将其边框设置为 0(即 Opera,有时是 IE)才能真正保持相同。尝试以下操作:

body,html{margin:0;border:0;padding:0;}

由于您没有说哪个元素或提供链接,因此我真的不能太深入。您对哪些元素有问题?

于 2010-08-07T23:39:19.230 回答
1

它不值得额外的 CSS 交互和额外的代码来添加一套完整的“规范化”填充或边距元素。

最好通过明确说明您在页面上使用的元素的填充和边距来设置您需要的样式。

于 2010-08-07T23:41:50.950 回答
1

填充通常处处为 0。浏览器之间最不平衡的是边距。只需在HTML 块元素上定义自己的边距。CSS 重置就像一把大锤。您需要重新定义的不仅仅是边距。但这对初学者可能会有所帮助,因为他们乍一看通常无法区分 HTML 中的默认内联元素和块元素。CSS重置将迫使他们重新定义一个和另一个“正确的方式”。

相关问题:


也就是说,如果您不断看到浏览器之间的不一致,那么您可能会使用强制浏览器进入quirksmode的 doctype 。在 MSIE 中,盒子模型 bug会活跃起来。您想使用严格的doctype: <!DOCTYPE html>

也可以看看:

于 2010-08-07T23:45:25.280 回答