我的<header>-tag
内有两个方框,总宽度为100%。当我对齐它们时它们非常完美,但是当我缩小窗口时,右边的盒子会向左下方跳跃。这是代码:
header {
width: 100%;
height: 90px;
}
#head {
float: left;
background-image: url('img/header.jpg');
height: 120px;
margin-right: 10px;
width: 65%;
}
#userinfo {
float: left;
height: 100px;
width: 33.2%;
background-color: #202020;
padding: 10px;
position: relative;
}
<header>
<section id="head">
</section>
<section id="userinfo">
test
</section>
</header>
有什么快速解决方法吗?想象一下,随着我的前进,其余的设计都会发生这种情况。提前谢谢。
答案 0 :(得分:0)
此处的问题是您在元素上使用padding
和margin
的某些值,默认情况下会将这些值添加到元素的实际大小,因为这两个元素都是98.2%
某些点的容器+20
的容器,它们不适合100%并且会中断。
要解决此问题,您可以使用box-sizing
属性,这会使padding
和border
值在声明的总大小范围内,因为这不会与{{margin
一起使用1}}您将需要一个额外的容器来使用padding
并创建分离:
header {
width: 100%;
height: 90px;
}
#head {
float: left;
box-sizing:border-box;
padding-right: 10px;
width: 65%;
}
#head > div {
background-image: url('http://placehold.it/500');
height: 120px;
}
#userinfo {
box-sizing:border-box;
float: left;
height: 100px;
width: 35%;
background-color: #202020;
padding: 10px;
position: relative;
}
&#13;
<header>
<section id="head">
<div></div>
</section>
<section id="userinfo">
test
</section>
</header>
&#13;
答案 1 :(得分:0)
感谢DaniP,解决了它。但那么内容和侧边栏部分呢?:
#container {
margin: 30px auto;
width: 70%;
min-height: 400px;
}
#leftmenu {
float: left;
box-sizing: border-box;
width: 20%;
min-height: 600px;
background-color: #202020;
}
#content {
float: left;
box-sizing: border-box;
width: 60%;
background-color: #202020;
min-height: 600px;
}
#content > div {
background-color: #202020;
min-height: 600px;
}
#rightmenu {
float: left;
box-sizing: border-box;
width: 20%;
min-height: 600px;
background-color: #202020;
}