为什么保证金位于我页面的顶部?

Foa*_*Guy 2 html css

myPage.html下

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html>
<head>
<title>Color Flash Cards</title>
<link rel="stylesheet" href="css/index.css" />
</head>
<body>
<div id="header">
    <div id="title">
        <h1>Color Flash Cards</h1>
    </div>
</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

index.css

body{
    background-color: #31859C;
    margin-left: 0px;
    margin-top: 0px;
    overflow-x: hidden;
}
#header{
    margin-top: 0px;
    height: 120px;
    background: #9838CE;
}
#title{
    margin-top: 0px;
}
Run Code Online (Sandbox Code Playgroud)

结果:

幽灵边缘

位于顶部(紫色上方)的边距来自哪里?我需要做些什么才能摆脱它?我可以使用负值margin-top来做到这一点,但这是"真正的"解决方案吗?

Ian*_*Ian 5

所有标题都有默认保证金,可以通过以下方式取消:

h1 {
    margin: 0;
}
Run Code Online (Sandbox Code Playgroud)

演示: Dabblet演示

我会建议使用像吨CSS复位码他一个,如果你想避免这些缺点和自己的样式.