将表单元素及其标签放在行中

时间:2016-08-01 13:25:10

标签: html css css-float

如何使用这样的标签来定位输入表单元素但不使用表格?标签应位于输入元素的中心,行中的块应位于外部块的中心。

+----------------------------------------------+
|       label1       label2       label3       |
|    [..........] [..........] [..........]    |
+----------------------------------------------+

同一行中可能有1,2,3或更多元素。

我试过了:



    .outer{text-align:center;}
    .inner{float:left;}

    <form>
      <div class="outer">
        <div class="inner">
          <label for="l1">label1</label><br><input id="l1" name="label1">
        </div>
        <div class="inner">
          <label for="l2">label2</label><br><input id="l2" name="label2">
        </div>
        <div class="inner">
          <label for="l3">label3</label><br><input id="l3" name="label3">
        </div>
      </div>
    </form>  
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:1)

将它们放在同一个div中,并将文本居中于该div:

&#13;
&#13;
.wrapper {
  text-align:center;
}

.wrapper * {
  text-align:left;
}

.okay {
  display:inline-block;
}

.okay p {
  text-align:center;
}
&#13;
<div class="wrapper">
 <div class="okay">
  <p>text</p>
  <input type='text'>
 </div>
 <div class="okay">
  <p>text</p>
  <input type='text'>
 </div>
 <div class="okay">
  <p>text</p>
  <input type='text'>
 </div>
</div>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

它也可以通过bootstrap框架..这使得响应

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css">
    <style>

    </style>
</head>
<body>
    <form>
    <div class="col-md-4 text-center">
          <div class="form-group">
            <label for="label1">label</label>
            <input type="text" class="form-control" id="label1" placeholder="labeltext">
        </div>
    </div>
    <div class="col-md-4 text-center">
        <div class="form-group">
            <label for="label2">label</label>
            <input type="text" class="form-control" id="label2" placeholder="labeltext">
        </div>
    </div>
    <div class="col-md-4 text-center">
        <div class="form-group">
            <label for="label2">label</label>
            <input type="password" class="form-control" id="label2" placeholder="labeltext">
        </div>
    </div>
</form>
</body>
</html>