22

我正在编写一个非常简单的 HTML 代码,如下所示。用记事本编写并在 IE-8 和 Firefox(操作系统:Window Vista)中打开。

<html>
<body>
    <table border="1"><tr><td>test</td></tr></table>
</body>
</html>

上面的代码没有什么特别之处,它从左上角创建了一些空间。

在此处输入图像描述

可以使用以下代码轻松删除

<body style="margin:0; padding:0">

现在我找到了默认的边距和填充,它4适用于 Firefox,而适用于 IE-8。

<body style="margin:4; padding:4">

我对这种情况有一些疑问。

  1. 为什么这个值为 4?
  2. 这个值是从哪里来的,它是否保存在某个地方?
  3. 我们可以修改(可配置)这个默认值吗?
  4. 这些值对于浏览器有何不同?

谢谢。

4

4 回答 4

13
  1. 首先,它可能是4px而不是4。其次,这正是浏览器供应商决定的默认方式。
  2. 它保存在默认浏览器样式表中。
  3. 你可以,但你不应该。它因每个浏览器而异。去谷歌上查询!How do I change default stylesheet on <insert browser here>?
  4. 可能存在细微差别,您应该可以通过查看默认样式表来判断......

这种差异是我们作为设计师使用 CSS 重置的主要原因之一,以标准化遵循不同浏览器实现的所有 CSS 尴尬。

于 2012-06-16T20:38:01.230 回答
2

浏览器为大多数 HTML 元素的 CSS 内置了“合理的默认值”——如果你有没有 CSS 的纯 HTML,这只会防止你的页面看起来完全不可读,但它们当然打算被你自己的 CSS 覆盖。

默认浏览器样式通常被称为“用户代理样式表” ——以下站点很好地参考了 IE 多年来拥有的各种特殊 UA 表单,并在底部提供了其他浏览器的表单:

http://www.iecss.com/

许多人用来“规范化”默认值的一种方法是“CSS 重置”,因此您在所有浏览器中都有相同的起点- 这只是您在设置所有 UA 的自己的 CSS 之前放置的 CSS 片段风格相同的东西。这是一个众所周知的:

http://necolas.github.com/normalize.css/

于 2012-06-16T22:38:34.823 回答
0

尝试这个

body{
    line-height: 0
}
于 2017-10-17T18:43:22.783 回答
-5

将此添加到您的样式表顶部

*{margin:0px;padding:0px;}

这消除了浏览器之间填充和边距的所有差异。

于 2015-04-20T20:23:06.137 回答