这是我的页面计划:
如果可以,请向我解释我在实施的HTML逻辑中出错的地方。我预览页面时标题的宽度不正确。 (显然,当我完成它时,我的页面看起来会变得丰富多彩。现在我只是想让布局正确。)
<html>
<head>
<title>div practice</title>
<style type="text/css">
body
{
padding: 0px;
height: 800px;
width: 600px;
}
.header
{
margin: 0px;
border: 1px dashed;
width: 598 px;
height: 148px;
position: absolute;
top: 0px;
left: 0px;
}
.mainContent
{
margin: 0px;
border: 1px dashed;
width: 598px;
height: 500px;
position: absolute;
top: 148px;
left: 0px;
}
.footer
{
margin: 0px;
border: 1px dashed;
width: 598px;
height: 148px;
position: absolute;
top: 648px;
left: 0px;
}
</style>
</head>
<body>
<div class="header">
<p>This is where the header goes</p>
</div>
<div class="mainContent">
<p>This where the main content goes</p>
</div>
<div class="footer">
<p>This is where the footer goes</p>
</div>
</body>
</html>
答案 0 :(得分:2)
在.header
样式中,将width: 598 px;
更改为width: 598px;
598 px
不是有效的属性值,因此会被忽略。删除空格,它应该按预期工作。
另外,如果你添加这行代码:
*, *:before, *:after {
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
这将更改框模型,以便从指定的宽度中减去填充和边框,而不是添加到它。它现在是一种流行的技术,因为它使数学不那么令人头疼,有利于响应式设计。使用此样式,您可以使用width: 600px;
定义标题,并在不影响宽度的情况下添加所需的border
和padding
。
答案 1 :(得分:0)
作为一项计划,我更喜欢以下内容:
1)使你的body
宽度为100%
body{
width: 100%;
}
2)添加outterWrapper
div以包含所有页面元素。
.outterWrapper{
width: 600px; // your page width;
margin: 0 auto; // to center in page
border: 1px solid #000; // if you need a border
}
3)开始标题,内容,页脚div
.header, .footer, .content{
width: 100%;
padding: 5px;
margin-bottom: 10px;
}
.header, .footer{
background-color: #cfe09b;
}
.footer{
margin-bottom: 0;
}
.content{
background-color: #89ccca;
}
你可以在这里看到我的意思&gt;&gt; http://jsfiddle.net/salota8550/EPsk2/