在下面的代码中,我有一个简单的页面设置,但是只要我向div
添加了一些内容page
,整个主页div
就会向下移动?
尝试将<h1>hello</h1>
添加到div
的课程page
。
问题是什么,div应该保留在那里,只需添加<h1>hello</h1>
!
代码:https://jsfiddle.net/5sx0sj2q/
.container{
width: 100%;
background-color: #d5d5d5;
}
.sidebarcontainer{
width: 300PX;
height: 2000px;
display: inline-block;
box-sizing: border-box;
padding: 5px;
padding-right: 2px;
}
.innersidebarcontainer{
position: relative;
width: 100%;
height: 100%;
}
.sidebar{
width: 293px;
background-color: white;
height: 500px;
top: 1px;
position: absolute;
}
.mainpage{
width: calc(100% - 300px);
padding: 5px;
padding-left: 2px;
height: 2000px;
display: inline-block;
box-sizing: border-box;
}
.page{
width: 100%;
height: 100%;
background-color: white;
}
.footer{
height: 500px;
width: 100%;
margin: 0 auto;
background-color: #031003;
}
&#13;
<div class="container">
<div class="sidebarcontainer">
<div class="innersidebarcontainer">
<div class="sidebar">
</div>
</div>
</div><!--
--><div class="mainpage">
<div class="page"></div>
</div>
</div>
<div class="footer"></div>
&#13;
答案 0 :(得分:2)
是的,有一个技巧:
.mainpage{
vertical-align : top; // Add this
}
另外,更改H1显示属性:
h1{
display : inline-block;
}
所有元素都保持在应有的位置。 CSS的乐趣。
答案 1 :(得分:1)
是正常的,显示:inline-block在元素之间添加一点空间(并且你没有更多的空间)。 使用float left代替你的代码。