Bootstrap 3 формы с полями ввода и текстовыми данными в отдельных строках / ячейках? - PullRequest
0 голосов
/ 12 февраля 2019

У меня есть форма внутри модального поля, которая имеет комбинацию полей ввода и простого текста.Мне интересно, каково общее правило в начальной загрузке для такой ситуации.Как элементы должны быть организованы?Должен ли я использовать <div class='form-group'> для всего или нормально использовать <div class='row'><div class='col-xs-12'>, например?Вот что у меня пока так:

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.0/js/bootstrap.min.js" integrity="sha384-7aThvCh9TypR7fIc2HV4O/nFMVCBwyIUKL8XCtKE+8xgCgl/PQGuFsvShjr74PBp" crossorigin="anonymous"></script>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.0/css/bootstrap.min.css" integrity="sha384-PDle/QlgIONtM1aqA2Qemk5gPOE7wFq8+Em+G/hmo5Iq0CCmYZLv3fVRDJ4MMwEA" crossorigin="anonymous">

<div id="myModal" class="modal fade" tabindex="-1" role="dialog">
  <div class="modal-dialog">
    <div class="modal-content">
      <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal">&times;</button>
        <h5 class="modal-title">Title</h5>
      </div>
      <div class="modal-body">
        <form id='frm_my'>
          <div class='row'>
            <div class='col-xs-12'>Frm validation rules in description here. Dummy text for testing purpuse.</div>
          </div>
          <div class='row'>
            <div class='col-xs-1'><input type='checkbox' name='check' id='check'></div>
            <div class='col-xs-11'>Field 1 description with some dummy text (example)</div>
          </div>
          <div class='row'>
            <div class='form-group'><label for='comment'>Comment:</label><textarea class='form-control' rows='2' id='comment'></textarea></div>
          </div>
          <div class='row'>
            <div class='col-xs-12'>Click on the Accept button if you would like to save the form data. <b>Accept</b>.</div>
          </div>
          <div class='row'>
            <div class='col-xs-12'>To cancel this screen and return to the display screen, click <b>Cancel</b></div>.
          </div>
        </form>
      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-primary">Accept</button>
        <button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
      </div>
    </div>
  </div>
</div>

<button type="button" class="btn btn-info btn-lg" data-toggle="modal" data-target="#myModal">Open Modal</button>

Кроме того, мне интересно, есть ли способ добавить отступы вокруг формы, чтобы она не находилась рядом с краем модальной рамки?Спасибо.

1 Ответ

0 голосов
/ 12 февраля 2019

JS Fiddle

(Из кода кажется, что используется Bootstrap 4.3.0. Таким образом, класс col-xs-12 заменяется на col-12 в коде)

TL; DR Могут использоваться сетки.Лучше использовать form-group, чтобы обернуть элементы формы (поэтому Bootstrap предоставил их!).

Сетки могут использоваться в модалах, как написано в документах .(Это для 3.4, а для v4.0 здесь ) Вы можете использовать его, скажем, когда вы хотите макет с двумя столбцами.

Элементы форм лучше переносятся на form-controlи специальные процедуры должны быть сделаны для <input> с типом checkbox, file, radio.(Таким образом, у нас есть стилизация и позиционирование по умолчанию с помощью Bootstrap). Документы

Для использования сетки с формами, также проверьте Сетка форм .

После добавления стилей с помощью form-group, если вы хотите больше дополнения квлево и вправо вы также можете добавить <div class='container'>.

...