简体   繁体   English

两个输入之间的Bootstrap 4输入组附加组件

[英]Bootstrap 4 input group add-on between two inputs

I'm trying to put an element between two input groups, then append two buttons at the end, but the alignment and sizing is completely off. 我试图在两个输入组之间放置一个元素,然后在末尾添加两个按钮,但是对齐和大小调整完全关闭。 This worked perfectly in Bootstrap v3.3.7 but since upgrading to Bootstrap v4.1 I can't get it to work. 这在Bootstrap v3.3.7中完美运行,但自从升级到Bootstrap v4.1后,我无法使其工作。

Here is how it looked in v3.3.7 : 以下是它在v3.3.7中的表现 在此输入图像描述

Here is my v3.3.7 code: 这是我的v3.3.7代码:

<div class="col-lg-10 text-right">
  <form role="form" class="form-inline" method="get">
    <div class="form-group" id="data_5">
      <div class="input-group my-2" id="datepicker">
        <input type="date" class="input-sm form-control" name="start_date" value="2019-01-03" max="2019-01-04">
        <span class="input-group-addon">to</span>
        <input type="date" class="input-sm form-control" name="end_date" value="2019-01-03" max="2019-01-04">
      </div>
    </div>
    <button class="btn mt-2 btn-sm btn-success" type="submit">Update</button>
    <button type="button" class="reset btn mt-2 btn-sm btn-primary" data-column="0" data-filter="">
      <i class="bootstrap-icon-white glyphicon glyphicon-filter"></i> Reset filters
    </button>
  </form>
</div>

Here is how it looks in v4.1 : 以下是它在v4.1中的外观: 在此输入图像描述

And here is my v4.1 code: 这是我的v4.1代码:

<div class="col-lg-10">
  <div class="float-right">
    <form role="form" class="form-inline" method="get">
      <div class="form-group" id="data_5">
        <div class="input-group my-2" id="datepicker">
          <input type="date" class="input-sm form-control" name="start_date" value="2019-01-03" max="2019-01-04">
          <span class="input-group-addon input-group-sm">to</span>
          <input type="date" class="input-sm form-control" name="end_date" value="2019-01-03" max="2019-01-04">
          <div class="input-group-append">
            <button class="btn mt-2 btn-sm btn-success" type="submit">Update</button>
            <button type="button" class="reset btn mt-2 btn-sm btn-primary" data-column="0" data-filter="">
              <i class="bootstrap-icon-white glyphicon glyphicon-filter"></i> Reset filters
            </button>
          </div>
        </div>
      </div>
    </form>
  </div>
</div>

What am I doing wrong with my migration code? 我的迁移代码出了什么问题?

This is the best port I can made to Bootstrap 4 . 这是我可以为Bootstrap 4制作的最佳端口。 I will explain only the main changes: 我只会解释主要的变化:

1) For put an addon between two inputs use: 1)在两个输入之间放置一个插件使用:

<input class="form-control">
<div class="input-group-prepend input-group-append">
  <span class="input-group-text">to</span>
</div>
<input class="form-control">

2) Glyphicons don't come with Bootstrap 4, so I used font-awesome instead. 2) Glyphicons不带Bootstrap 4,所以我使用了font-awesome

3) I replace mt-2 classes on buttons with ml-2 classes. 3)我用ml-2类替换按钮上的mt-2 ml-2类。

The rest of the details can be checked on next example: 其余的细节可以在下一个例子中查看:

 <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.6/umd/popper.min.js" integrity="sha384-wHAiFfRlMFy6i5SRaxvfOCifBUQy1xHdJ/yoi7FRNXMRBu5WHdZYu1hA6ZOblgut" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/css/bootstrap.min.css" integrity="sha384-GJzZqFGwb1QTTN6wy59ffF1BuGJpLSa9DkKMp0DgiMDm4iYMj70gZWKYbI706tWS" crossorigin="anonymous"> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/js/bootstrap.min.js" integrity="sha384-B0UglyR+jN6CkvvICOB2joaf5I4l3gm9GU6Hc1og6Ls7i6U/mkkaduKaBhlAXv9k" crossorigin="anonymous"></script> <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.6.3/css/all.css" integrity="sha384-UHRtZLI+pbxtHCWp1t77Bi1L4ZtiqrqD80Kn4Z8NTSRyMA2Fd33n5dQ8lWUE00s/" crossorigin="anonymous"> <div class="container-fluid"> <div class="row"> <!-- Porting begin --> <div class="col-lg-10"> <form role="form" class="form-inline" method="get"> <div class="form-group" id="data_5"> <div class="input-group input-group-sm my-2" id="datepicker"> <input type="date" class="form-control" name="start_date" value="2019-01-03" max="2019-01-04"> <div class="input-group-prepend input-group-append"> <span class="input-group-text">to</span> </div> <input type="date" class="form-control" name="end_date" value="2019-01-03" max="2019-01-04"> </div> </div> <button class="btn btn-sm btn-success ml-2" type="submit">Update</button> <button type="button" class="reset btn btn-sm btn-primary ml-2" data-column="0" data-filter=""> <i class="fas fa-filter"></i> Reset filters </button> </form> </div> <!-- Porting end --> </div> </div> 

Also, if you want to justify all element to the right of the column that wraps the form, then use: 此外,如果要证明包装表单的列右侧的所有元素,请使用:

<div class="col-lg-10 d-flex justify-content-end">

in replacement of: 取代:

<div class="col-lg-10">

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM