我是网页设计的新人。我使用CSS和HTML创建了我的网页布局,如下所示。问题是即使我将边距设置为0,上边距也没有设置为0并留下一些空间。我怎样才能清除这个空白区?
问题的屏幕截图
样式表
<style type="text/css">
body{
margin:0 auto;
background:#F0F0F0;}
#header{
background-color:#009ACD;
height:120px;}
#header_content {
width:70%;
background-color:#00B2EE;
height:120px;
margin:0 auto;
text-align:center;}
#content{
width:68%;
background-color:#EBEBEB;
margin:0 auto;
padding:20px;}
</style>
HTML
<body>
<div id="header">
<div id="header_content">
<p>header_content</p>
</div>
</div>
<div id="content">
Main Content
</div>
</body>
这是整个文件
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Book Shop</title>
<style type="text/css">
html, body, #header {
margin: 0 !important;
padding: 0 !important;
}
body{
margin:0; padding: 0;
background:#F0F0F0;}
#header{
background-color:#009ACD;
height:120px;}
#header_content {
width:70%;
background-color:#00B2EE;
height:120px;
margin:0 auto;
text-align:center;}
#content{
width:68%;
background-color:#EBEBEB;
margin:0 auto;
padding:20px;}
body {
margin: 0;
padding: 0;
}
</style>
</head>
<body>
<div id="header">
<div id="header_content">
<p>header_content</p>
</div>
</div>
<div id="content">
Main Content
</div>
</body>
</html>
答案 0 :(得分:31)
答案 1 :(得分:21)
您需要将实际页面设置为margin:0并将padding:0设置为实际的html,而不仅仅是正文。
在你的css样式表中使用它。
*, html {
margin:0;
padding:0;
}
将整个页面设置为0,以便在没有边距或填充的情况下进行全新清理。
答案 2 :(得分:4)
你应该有(或两者):
尝试
html, #header {
margin: 0 !important;
padding: 0 !important;
}
margin
是“空间”外框,padding
是“空间”里面框(边框之间)和内容)。
!important
防止后一规则覆盖财产。
答案 3 :(得分:3)
尝试
html, body{
margin:0 !important;
padding:0 !important;
}
答案 4 :(得分:3)
h1 {
margin-top:0;
padding-top: 0;}
它&#39;只是对h1标签的误解。你必须将h1标签margin-top和padding-top设置为0(零)。
答案 5 :(得分:1)
只需在主 CSS 的开头使用此代码即可。
* {
margin: 0;
padding: 0;
}
以上代码几乎适用于所有浏览器。
答案 6 :(得分:0)
答案 7 :(得分:0)
阅读本文并对相同问题进行故障排除后,我同意它与标题有关(h1肯定,没有与其他任何人一起玩过),浏览器样式添加边距和填充以及难以找到的巧妙规则和覆盖骑。
我已经采用了一种技术,用于将box-sizing属性适当地应用于边距和填充。用于大小调整的原始文章位于CSS-Tricks:
html {
margin: 0;
padding: 0;
}
*, *:before, *:after {
margin: inherit;
padding: inherit;
}
到目前为止,这完全是不使用复杂重置的技巧,并且无论如何都使得设计更容易应用。希望它有所帮助。
答案 8 :(得分:0)
将此代码添加到主CSS的开头。
*,html,body{
margin:0 !important;
padding:0 !important;
box-sizing: border-box !important;;
}
答案 9 :(得分:0)
我今天才开始学习CSS,并且遇到了同样的问题,我认为您无需重置所有HTML标签的样式。您需要重置使用的顶部HTML的默认边距,即段落标记。而且我知道这是个老问题,但是也许我下面的解决方案会有所帮助。
尝试一下:
body{
margin: 0;
background:#F0F0F0;
}
p{
margin: 0;
}
答案 10 :(得分:0)
这很简单。只需将其添加到正文中即可。
body{
margin:0;
padding:0;
overflow:hidden;
}
答案 11 :(得分:-2)
尝试
body {
margin: 0;
padding: 0;
}
代替
.body {
margin: 0;
padding: 0;
}
请勿使用类选择器选择正文。