我希望在一行上有一些文本,然后是同一行上的输入框。
但是,输入框始终会转到下一行,即使它在与文本相同的行上有足够的空间。我查看了文档,并且只有建议可以做我想要的形式(即类形式 - 水平)。
但是,我只想要一些文本(<p>
标签),然后是输入框。
看简单的JSFiddle http://jsfiddle.net/dz089gac/1/
<div class="container">
<div class="row">
<p>Hi</p>
<input type="text" placeholder="hi">
</div>
</diV>
答案 0 :(得分:2)
使用以下代码:
<div class="container">
<div class="row">
<span>Hi</span>
<input type="text" placeholder="hi">
</div>
</diV>
使用span
代替p
代码p
创建元素块,并在代码关闭后放置一个新行。
答案 1 :(得分:1)
段落(p)是块级元素。这意味着它占据了它所在的整个“行”。
您应该强烈考虑使用标签(标签),这在此上下文中更具语义正确性,因此提供了一些好处:
<div class="container">
<div class="row">
<label for="my_input_element">Hi</label>
<input type="text" placeholder="hi" id="my_input_element">
</div>
</diV>
单击标签将焦点设置在相应的输入元素上,并且屏幕阅读器(和其他设备)识别标签与输入相关联,而不是与不相关的文本块相关联。这完全标签是用于什么的。
答案 2 :(得分:1)
这是因为p
是一个块元素,下一个元素将从一个新行开始。
如果您无法更改元素类型或将输入移至p
标记,则可以使用css将p
元素内联。
.row p{
display:inline-block;
}
答案 3 :(得分:0)
放入段落内。
<p>Hi <input type="text" placeholder="hi"></p>
但如果您使用的是labels
而不是p
<label>Hi <input type="text" placeholder="hi"></label>
答案 4 :(得分:0)
我不知道这是否是您想要的,但我已将输入类型放入</p>
标记。
答案 5 :(得分:0)
只需将输入放在<p></p>
e.g。
<div class="container">
<div class="row">
<p>Hi <input type="text" placeholder="hi"></p>
</div>
</diV>
答案 6 :(得分:0)
您可以将<P>
标记的显示属性设置为内联块值,即display=inline-block
,如果需要,您可以为Box提供一些余量,这将在它们之间添加空格。
即。
<div class="container">
<div class="row">
<p style="display:inline-block;">Hi</p>
<input type="text" placeholder="hi" >
</div>
</diV>