div
我遇到了一些问题,我希望form
旁边有一些input
标记。当我在两者中使用display: inline-block
时,div
位置略低于form
的位置。
我真的不知道为什么以及如何解决这个问题。我试图在互联网上找到答案,但失败了。
HTML:
<body>
<form class="row">
<input type="text">
<input type="text">
<input type="text">
</form>
<div class="row">
second column
</div>
</body>
CSS:
input {
display: block;
}
.row {
display: inline-block;
border: 1px solid black;
width: 48%;
height: 200px;
}
答案 0 :(得分:0)
表现总是很奇怪,但可以用overflow: hidden;
input {
display: block;
}
.row {
display: inline-block;
border: 1px solid black;
width: 48%;
height: 200px;
overflow: hidden;
}
&#13;
<body>
<form class="row">
<input type="text">
<input type="text">
<input type="text">
</form>
<div class="row">
second column
</div>
</body>
&#13;
答案 1 :(得分:0)
如果您可以自由使用CSS3,flex layout将是另一种选择。
只需将其设置在身体上:
body {
display:flex;
}
input {
display: block;
}
.row {
border: 1px solid black;
width: 48%;
height: 200px;
}
&#13;
<body>
<form class="row">
<input type="text">
<input type="text">
<input type="text">
</form>
<div class="row">
second column
</div>
</body>
&#13;
答案 2 :(得分:0)
只需添加float:left;你的.row课程,你已经修好了。
.row {
display: inline-block;
float: left;
border: 1px solid black;
width: 48%;
height: 200px;
}
答案 3 :(得分:0)
添加vertical-align:top;到.row选择器;
input {
display: block;
}
.row {
display: inline-block;
border: 1px solid black;
width: 48%;
height: 200px;
vertical-align:top;
}
<body>
<form class="row">
<input type="text">
<input type="text">
<input type="text">
</form>
<div class="row">
second column
</div>
</body>