Html 填充/边距的原因是什么?

Html 填充/边距的原因是什么?,html,css,xhtml,Html,Css,Xhtml,我一直在用HTML输入一个网页,我遇到了一个奇怪的问题 我在这里看不到任何应该在左侧引入白边的内容 下拉菜单中的洋红色腰带应该严格地向左对齐(在我看来),但事实并非如此。(左侧应该像右侧到右侧边缘一样。) 有人能告诉我浏览器边缘和洋红色div(#menuh)之间的距离是多少吗?许多浏览器都强制使用默认样式。在我的例子(Chrome/Mac)中,body元素的边界为8px。默认情况下,可以使用以下规则(将其放在css顶部)删除元素上的所有边距/填充: * { margin: 0; padding

我一直在用HTML输入一个网页,我遇到了一个奇怪的问题

我在这里看不到任何应该在左侧引入白边的内容

下拉菜单中的洋红色腰带应该严格地向左对齐(在我看来),但事实并非如此。(左侧应该像右侧到右侧边缘一样。)


有人能告诉我浏览器边缘和洋红色div(#menuh)之间的距离是多少吗?

许多浏览器都强制使用默认样式。在我的例子(Chrome/Mac)中,
body
元素的边界为8px。默认情况下,可以使用以下规则(将其放在css顶部)删除元素上的所有边距/填充:

* { margin: 0; padding: 0 }

或者只需删除
正文
元素上的边距/填充。我更喜欢通配符方法,因为它可以防止以后在其他浏览器默认设置中出现同样的问题。

许多浏览器都强制使用默认样式。在我的例子(Chrome/Mac)中,
body
元素的边界为8px。默认情况下,可以使用以下规则(将其放在css顶部)删除元素上的所有边距/填充:

* { margin: 0; padding: 0 }
或者只需删除
正文
元素上的边距/填充。我更喜欢通配符方法,因为它可以防止以后在其他浏览器默认设置中出现同样的问题。

jsiddle(以及大多数浏览器)为
标记提供默认的填充,即您看到的空白。设置

body {
    padding: 0;
}
你的问题就消失了。JSFIDLE中的填充(对于我来说,至少在Chrome/Win8上)是8px

要捕获所有情况(浏览器具有不同的默认样式),请对
应用0填充和边距:

JSFiddle(和大多数浏览器)为
标记提供了默认的填充,即您看到的空白。设置

body {
    padding: 0;
}
你的问题就消失了。JSFIDLE中的填充(对于我来说,至少在Chrome/Win8上)是8px

要捕获所有情况(浏览器具有不同的默认样式),请对
应用0填充和边距:


默认填充是问题所在。大多数浏览器都有它,所以即使在JSFIDLE之外,您也可能会遇到它

最好的方法是使用CSS重置样式表。为您将在网页中使用的大多数元素创建适当的填充和边距重置。以下是一些例子:






默认填充是问题所在。大多数浏览器都有它,所以即使在JSFIDLE之外,您也可能会遇到它

最好的方法是使用CSS重置样式表。为您将在网页中使用的大多数元素创建适当的填充和边距重置。以下是一些例子:






为了补充这个问题,大多数经验丰富的web UI开发人员在应用自己的CSS样式之前,都会使用CSS重置来删除默认的浏览器行为。我强烈建议您研究CSS重置,因为这些重置可以让您的生活更加轻松,特别是对于跨浏览器开发。事实上,大多数有经验的web UI开发人员都不这么做。我发现我同意BoltClock的观点,并补充了这一答案,大多数经验丰富的web UI开发人员在应用自己的CSS样式之前,都会使用CSS重置来删除默认的浏览器行为。我强烈建议您研究CSS重置,因为这些重置可以让您的生活更加轻松,特别是对于跨浏览器开发。事实上,大多数有经验的web UI开发人员都不这么认为。我发现我同意BoltClock的观点,这里的问题标题与问题不匹配。@BoltClock为什么会这样认为,你们的建议是什么?问题标题和问题标题不匹配。为什么你们会这样认为?你们的建议是什么?