выровняйте входной тег снизу внутри элемента div в bootstrap - PullRequest
1 голос
/ 14 апреля 2020

Как выровнять входной тег в нижней части тега div, входной тег второго тега div с меткой Сумма, собранная на дату, должна быть выровнена по низу. Попытка добавления text-alignment-bottom, но это не работает.

<div class="row col-sm-12" style="border: thin solid black ">
  <div class="row " margin-top:4px>
    <div class="col-sm-4 col-lg-2">
      <label class="description" for="element_2"> Amount payable on this date </label>
      <input type="number" required="required" class="form-control" name='amountdue' id="amountDue" onkeyup="diffInCollection()">
    </div>
    <div class="col-sm-4 col-lg-2">
      <label class="description" for="element_2">Amount collected on date </label>
      <input type="number" required="required" class="form-control text-bottom " name='collectedamount' align="bottom" id="amountCollected" onkeyup="diffInCollection()">
    </div>
    <div class=" col-sm-4 col-lg-2">
      <label class="description" for="element_2">Shortfall in collections for the day </label>
      <input type="number" required="required" class="form-control" name='shortfall' id="shortfall" value="">
    </div>
  </div>
</div>

input tag of the second div with label Amount collected on the date should be aligned to bottom

Ответы [ 2 ]

1 голос
/ 14 апреля 2020

Вы можете достичь своей цели, используя flexbox.

ИСПОЛЬЗОВАНИЕ BOOTSTRAP КЛАССОВ

вам необходимо add d-flex flex-column justify-content-between во всех ваших col-sm-4.

<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css">

<div class="row col-sm-12" style="border: thin solid black ">
    <div class="row" style="margin-top:4px" >
        <div class="col-sm-4 col-lg-2 d-flex flex-column justify-content-between">
            <label class="description" for="element_2"> Amount payable on this date </label>
            <input type="number" required="required" class="form-control" name='amountdue' id="amountDue" onkeyup="diffInCollection()">
        </div>
        <div class="col-sm-4 col-lg-2 d-flex flex-column justify-content-between">
           <label class="description" for="element_2">Amount collected </label>
           <input type="number" required="required" class="form-control text-bottom"  name='collectedamount' align="bottom" id="amountCollected" onkeyup="diffInCollection()">
       </div>
       <div class=" col-sm-4 col-lg-2 d-flex flex-column justify-content-between">
            <label class="description" for="element_2">Shortfall in collections for the day </label>
            <input type="number" required="required" class="form-control" name='shortfall' id="shortfall" value="">
        </div>
    </div>
</div>

<script src="https://code.jquery.com/jquery-3.4.1.slim.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js"></script>

ИСПОЛЬЗОВАНИЕ CSS КЛАССОВ

Я добавил ниже CSS в center_input классе, чтобы ваша проблема была решена

ПРИМЕЧАНИЕ: НЕ ДОБАВЛЯЙТЕ CSS В col-sm-4 ДРУГОЕ ВСЕ col-sm-4 КЛАСС ПРИМЕНЯЕТ ЭТОТ CSS

.center_input {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css">

<div class="row col-sm-12" style="border: thin solid black ">
    <div class="row" style="margin-top:4px" >
        <div class="col-sm-4 col-lg-2 center_input">
            <label class="description" for="element_2"> Amount payable on this date </label>
            <input type="number" required="required" class="form-control" name='amountdue' id="amountDue" onkeyup="diffInCollection()">
        </div>
        <div class="col-sm-4 col-lg-2 center_input">
           <label class="description" for="element_2">Amount collected </label>
           <input type="number" required="required" class="form-control text-bottom"  name='collectedamount' align="bottom" id="amountCollected" onkeyup="diffInCollection()">
       </div>
       <div class=" col-sm-4 col-lg-2 center_input">
            <label class="description" for="element_2">Shortfall in collections for the day </label>
            <input type="number" required="required" class="form-control" name='shortfall' id="shortfall" value="">
        </div>
    </div>
</div>

<script src="https://code.jquery.com/jquery-3.4.1.slim.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js"></script>
1 голос
/ 14 апреля 2020

Вы можете добавить свойства flex к .col-sm-4

.col-sm-4 {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css" rel="stylesheet" />
<div class="row col-sm-12" style="border: thin solid black ">
  <div class="row " margin-top:4px>
    <div class="col-sm-4 col-lg-2">
      <label class="description" for="element_2"> Amount payable on this date </label>
      <input type="number" required="required" class="form-control" name='amountdue' id="amountDue" onkeyup="diffInCollection()">
    </div>
    <div class="col-sm-4 col-lg-2">
      <label class="description" for="element_2">Amount collected on date </label>
      <input type="number" required="required" class="form-control" name='collectedamount' align="bottom" id="amountCollected" onkeyup="diffInCollection()">
    </div>
    <div class="col-sm-4 col-lg-2">
      <label class="description" for="element_2">Shortfall in collections for the day </label>
      <input type="number" required="required" class="form-control" name='shortfall' id="shortfall" value="">
    </div>
  </div>
</div>
...