我希望一些文本和文本字段能够在同一行中正确显示,并在每个文本字段后进行换行。首先,我有一个具有绝对位置的类中的所有按钮,但我认为有更好的解决方案。
此刻我就是这样
<form action="" method="get" name="pdaten" >
<p><div class="text">Vorname</div><input class="button" id="vname" type="text" /></p>
<p><div class="text">Nachname</div><input class="button" id="nname" type="text" /></p>
<p><div class="text">Geburtstag</div><input class="button" id="gebdat" type="text" /></p>
</form>
CSS:
form{
padding-left:1em;
}
.button{
position:relative;
left:0%;
}
.text{
position:relative;
text-align:left;
width:20%;
background-color:#00FF00;
}
问题是,文本字段总是显示在下一行中,而不是与文本所在的div相同。我可以使用跨度,但是我不知道如何正确定位它们,因为我希望文本字段完全位于最后一个之下。
任何人都可以帮我解决这个问题吗?
答案 0 :(得分:1)
您可以将div
s display
属性设置为inline
,如下所示:
.text {
display: inline;
}
这将使div
的行为类似于内联元素。
答案 1 :(得分:1)
因为div
是块元素,您可以通过将display
属性值更改为inline-display
.text{
position:relative;
text-align:left;
width:20%;
background-color:#00FF00;
display: inline-block;
}
演示:Fiddle
答案 2 :(得分:1)
将display:inline-block;
添加到您的文字类。
.text{
position:relative;
text-align:left;
width:20%;
background-color:#00FF00;
display:inline-block;
}
<强> jsFiddle example 强>
答案 3 :(得分:1)
将float:left; clear:right;
添加到.button元素
答案 4 :(得分:1)
为什么不为你的div添加display: inline-block