我正在开发一个小应用程序,我一开始就卡住了。我写了一些HTML和CSS,但是一个div的高度正在影响另一个div的位置。
这是我的HTML和CSS
HTML:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<header></header>
<div id="container">
<div class="container1">
<div class="title">Title 1</div>
<ul class="action">
<li>Option 1</li>
<li>Option 2</li>
<li>Option 3</li>
</ul>
</div>
<div class="container2">
<div class="title"> Title 2 </div>
<ul class="list">Some random text</ul>
<ul class="options">
<li>Option 1</li>
<li>Option 2</li>
<li>Option 3</li>
<li>Option 4</li>
<li>Option 5</li>
</ul>
</div>
</div>
</body>
</html>
CSS:
*{
margin: 0;
padding: 0;
}
header{
width: 100%;
height: 50px;
background: dimgray;
}
ul{
display: inline-block;
list-style: none;
padding: 10px;
margin-left: 10px;
}
div.container1{
border: 1px solid black;
display: inline-block;
margin-left: 10px;
}
div.container2{
display: inline-block;
width: 30%;
margin-left: 10px;
}
div.title{
width: 100%;
background: lightblue;
text-align: center;
}
ul.list{
box-sizing: border-box;
width: 100%;
border: 1px solid black;
margin-left: 0;
height: 300px;
}
ul.options li{
float: left;
margin: 2px;
padding: 2px;
background: lightblue;
}
我可以使用定位并实现我想要的内容,如this SO post。
中所述但是如果有人能解释我为什么在我的标记中更改container2的高度会影响container1的位置,那将是一个巨大的帮助。感谢。
答案 0 :(得分:2)
Juts将vertical-align: top;
提供给div.container1
因为默认情况下这两个容器都是display: inline-block;
,所以vertical-align:baseline
。
div.container1{
border: 1px solid black;
display: inline-block;
margin-left: 10px;
vertical-align: top;
}
<强> Working Fiddle 强>
答案 1 :(得分:1)
请试试这个:
div.container1 {
border: 1px solid black;
display: inline-block;
margin-left: 10px;
float: left;
}