Label on the left side instead above an input field

前端 未结 15 826
太阳男子
太阳男子 2020-12-02 09:44

I would like to have the labels not above the input field, but on the left side.

相关标签:
15条回答
  • 2020-12-02 10:18

    I think this is what you want, from the bootstrap documentation "Horizontal form Use Bootstrap's predefined grid classes to align labels and groups of form controls in a horizontal layout by adding .form-horizontal to the form. Doing so changes .form-groups to behave as grid rows, so no need for .row". So:

    <form class="form-horizontal" role="form">
    <div class="form-group">
      <label for="inputEmail3" class="col-sm-2 control-label">Email</label>
    <div class="col-sm-10">
      <input type="email" class="form-control" id="inputEmail3" placeholder="Email">
    </div>
    </div>
    <div class="form-group">
      <label for="inputPassword3" class="col-sm-2 control-label">Password</label>
      <div class="col-sm-10">
        <input type="password" class="form-control" id="inputPassword3" placeholder="Password">
      </div>
    </div>
    <div class="form-group">
      <div class="col-sm-offset-2 col-sm-10">
        <div class="checkbox">
          <label>
            <input type="checkbox"> Remember me
          </label>
        </div>
      </div>
    </div>
    <div class="form-group">
      <div class="col-sm-offset-2 col-sm-10">
        <button type="submit" class="btn btn-default">Sign in</button>
      </div>
    </div>
    </form>
    

    Fiddle: http://jsfiddle.net/beewayne/B9jj2/29/

    0 讨论(0)
  • 2020-12-02 10:19

    I managed to fix my issue with. Seems to work fine and means I dont have to add widths to all my inputs manually.

    .form-inline .form-group input {
     width: auto; 
    }
    
    0 讨论(0)
  • 2020-12-02 10:22

    I am sure you would've already found your answer... here is the solution I derived at.

    That's my CSS.

    .field, .actions {
        margin-bottom: 15px;
      }
      .field label {
        float: left;
        width: 30%;
        text-align: right;
        padding-right: 10px;
        margin: 5px 0px 5px 0px;
      }
      .field input {
        width: 70%;
        margin: 0px;
      }
    

    And my HTML...

    <h1>New customer</h1>
    <div class="container form-center">
        <form accept-charset="UTF-8" action="/customers" class="new_customer" id="new_customer" method="post">
        <div style="margin:0;padding:0;display:inline"></div>
    
      <div class="field">
        <label for="customer_first_name">First name</label>
        <input class="form-control" id="customer_first_name" name="customer[first_name]" type="text" />
      </div>
      <div class="field">
        <label for="customer_last_name">Last name</label>
        <input class="form-control" id="customer_last_name" name="customer[last_name]" type="text" />
      </div>
      <div class="field">
        <label for="customer_addr1">Addr1</label>
        <input class="form-control" id="customer_addr1" name="customer[addr1]" type="text" />
      </div>
      <div class="field">
        <label for="customer_addr2">Addr2</label>
        <input class="form-control" id="customer_addr2" name="customer[addr2]" type="text" />
      </div>
      <div class="field">
        <label for="customer_city">City</label>
        <input class="form-control" id="customer_city" name="customer[city]" type="text" />
      </div>
      <div class="field">
        <label for="customer_pincode">Pincode</label>
        <input class="form-control" id="customer_pincode" name="customer[pincode]" type="text" />
      </div>
      <div class="field">
        <label for="customer_homephone">Homephone</label>
        <input class="form-control" id="customer_homephone" name="customer[homephone]" type="text" />
      </div>
      <div class="field">
        <label for="customer_mobile">Mobile</label>
        <input class="form-control" id="customer_mobile" name="customer[mobile]" type="text" />
      </div>
      <div class="actions">
        <input class="btn btn-primary btn-large btn-block" name="commit" type="submit" value="Create Customer" />
      </div>
    </form>
    </div>
    

    You can see the working example here... http://jsfiddle.net/s6Ujm/

    PS: I am a beginner too, pro designers... feel free share your reviews.

    0 讨论(0)
提交回复
热议问题