下面是我的一个简单页面的代码。我正在尝试(A)顶部的横幅,其中包含徽标,右侧的标题,然后是“登录/注册”链接,(B)在所有这些下方,然后我将获得主要文本网站。
我希望顶部的正文和横幅之间有很大的差距。所以我用 div 来划分页面。但是,当我对#main 应用“margin-top”以使横幅保持一定距离时,所有内容,即正文和横幅中的所有内容都会在页面下方移动。如果我将“margin-bottom”应用于标题元素,也会发生同样的事情。
我对 CSS 和 HTML 有点陌生,但我虽然在此之前我已经掌握了它。我已经为此挠头很久了,但我似乎根本无法理解这里的定位!
<!DOCTYPE html>
<html lang="en">
<head>
<link href="style.css" rel="stylesheet" type="text/css"/>
<meta charset="utf-8"/>
<title>My Page</title>
</head>
<body>
<header id="masthead" role="banner">
<img src="jep.jpeg" alt="My Page">
<h2>Welcome!</h2>
<p><a href="dummy.html">Sign in</a> <a href="dummy.html">Register</a></p>
</header>
<div id="main" role="main">
<!--main text here -->
</div>
</body>
</html>
这是CSS代码:
#masthead {
position: relative;
}
#masthead img {
position: absolute;
}
#masthead h2 {
position: absolute;
left: 150px;
}
#masthead p {
position: absolute;
right: 10px;
}
#main {
margin-top: 40px;
}