XSXSSMSMMDMDLGLGXLXLXXLXXL
Extra small: <576pxSmall: ≥576pxMedium: ≥768pxLarge: ≥992pxExtra large: ≥1200pxExtra extra large: ≥1400px

Layout


Form groups

Grouping of labels, controls, optional help text and form validation messages.

Lorem ipsum dolor sit amet, consectetur adipiscing elit. In laoreet pellentesque lorem sed elementum.

Valid feedback text

Invalid feedback text

<form>
  <div class="mb-3">
    <label for="formGroupText" class="form-label">Text input label</label>
    <input type="text" class="form-control" placeholder="Text input placeholder" id="formGroupText">
  </div>
  <div class="mb-3">
    <label for="formGroupText2" class="form-label">Text input label</label>
    <input type="text" class="form-control" placeholder="Text input placeholder" id="formGroupText2" aria-describedby="formGroupText2Help">
    <p id="formGroupText2Help" class="form-text">Lorem ipsum dolor sit amet, consectetur adipiscing elit. In laoreet pellentesque lorem sed elementum.</p>
    <p class="valid-feedback">Valid feedback text</p>
    <p class="invalid-feedback">Invalid feedback text</p>
  </div>
</form>
<form> <div class="mb-3"> <label for="formGroupText" class="form-label">Text input label</label> <input type="text" class="form-control" placeholder="Text input placeholder" id="formGroupText"> </div> <div class="mb-3"> <label for="formGroupText2" class="form-label">Text input label</label> <input type="text" class="form-control" placeholder="Text input placeholder" id="formGroupText2" aria-describedby="formGroupText2Help"> <p id="formGroupText2Help" class="form-text">Lorem ipsum dolor sit amet, consectetur adipiscing elit. In laoreet pellentesque lorem sed elementum.</p> <p class="valid-feedback">Valid feedback text</p> <p class="invalid-feedback">Invalid feedback text</p> </div> </form>

Form grid

<form>
  <div class="row g-3">
    <div class="col-lg-7">
      <input type="text" class="form-control" placeholder="Text input placeholder" aria-label="Text input label">
    </div>
    <div class="col-lg-3">
      <input type="text" class="form-control" placeholder="Text input placeholder" aria-label="Text input label">
    </div>
    <div class="col-lg-2">
      <input type="text" class="form-control" placeholder="Text input placeholder" aria-label="Text input label">
    </div>
  </div>
</form>
<form> <div class="row g-3"> <div class="col-lg-7"> <input type="text" class="form-control" placeholder="Text input placeholder" aria-label="Text input label"> </div> <div class="col-lg-3"> <input type="text" class="form-control" placeholder="Text input placeholder" aria-label="Text input label"> </div> <div class="col-lg-2"> <input type="text" class="form-control" placeholder="Text input placeholder" aria-label="Text input label"> </div> </div> </form>

Gutters

<form>
  <div class="row gx-2 mb-4">
    <div class="col">
      <input type="text" class="form-control" placeholder="Text input placeholder" aria-label="Text input label">
    </div>
    <div class="col">
      <input type="text" class="form-control" placeholder="Text input placeholder" aria-label="Text input label">
    </div>
  </div>
  <div class="row g-4">
    <div class="col-6">
      <input type="text" class="form-control" placeholder="Text input placeholder" aria-label="Text input label">
    </div>
    <div class="col-6">
      <input type="text" class="form-control" placeholder="Text input placeholder" aria-label="Text input label">
    </div>
    <div class="col-6">
      <input type="text" class="form-control" placeholder="Text input placeholder" aria-label="Text input label">
    </div>
    <div class="col-6">
      <input type="text" class="form-control" placeholder="Text input placeholder" aria-label="Text input label">
    </div>
  </div>
</form>
<form> <div class="row gx-2 mb-4"> <div class="col"> <input type="text" class="form-control" placeholder="Text input placeholder" aria-label="Text input label"> </div> <div class="col"> <input type="text" class="form-control" placeholder="Text input placeholder" aria-label="Text input label"> </div> </div> <div class="row g-4"> <div class="col-6"> <input type="text" class="form-control" placeholder="Text input placeholder" aria-label="Text input label"> </div> <div class="col-6"> <input type="text" class="form-control" placeholder="Text input placeholder" aria-label="Text input label"> </div> <div class="col-6"> <input type="text" class="form-control" placeholder="Text input placeholder" aria-label="Text input label"> </div> <div class="col-6"> <input type="text" class="form-control" placeholder="Text input placeholder" aria-label="Text input label"> </div> </div> </form>

Horizontal form

Level
<form>
  <div class="row mb-3">
    <label for="horizontalEmail" class="col-md-2 col-form-label">Email</label>
    <div class="col-md-10">
      <input type="email" class="form-control" id="horizontalEmail">
    </div>
  </div>
  <div class="row mb-3">
    <label for="horizontalPassword" class="col-md-2 col-form-label">Password</label>
    <div class="col-md-10">
      <input type="password" class="form-control" id="horizontalPassword">
    </div>
  </div>
  <fieldset>
    <div class="row mb-3">
      <legend class="col-md-2 col-form-label pt-0">Level</legend>
      <div class="col-md-10">
        <div class="form-check">
          <input type="radio" class="form-check-input" name="horizontalRadio" id="horizontalRadio1">
          <label class="form-check-label" for="horizontalRadio1">Beginner</label>
        </div>
        <div class="form-check">
          <input type="radio" class="form-check-input" name="horizontalRadio" id="horizontalRadio2">
          <label class="form-check-label" for="horizontalRadio2">Intermediate</label>
        </div>
        <div class="form-check">
          <input type="radio" class="form-check-input" name="horizontalRadio" id="horizontalRadio3">
          <label class="form-check-label" for="horizontalRadio3">Advanced</label>
        </div>
      </div>
    </div>
  </fieldset>
  <button type="submit" class="btn btn-primary">Register</button>
</form>
<form> <div class="row mb-3"> <label for="horizontalEmail" class="col-md-2 col-form-label">Email</label> <div class="col-md-10"> <input type="email" class="form-control" id="horizontalEmail"> </div> </div> <div class="row mb-3"> <label for="horizontalPassword" class="col-md-2 col-form-label">Password</label> <div class="col-md-10"> <input type="password" class="form-control" id="horizontalPassword"> </div> </div> <fieldset> <div class="row mb-3"> <legend class="col-md-2 col-form-label pt-0">Level</legend> <div class="col-md-10"> <div class="form-check"> <input type="radio" class="form-check-input" name="horizontalRadio" id="horizontalRadio1"> <label class="form-check-label" for="horizontalRadio1">Beginner</label> </div> <div class="form-check"> <input type="radio" class="form-check-input" name="horizontalRadio" id="horizontalRadio2"> <label class="form-check-label" for="horizontalRadio2">Intermediate</label> </div> <div class="form-check"> <input type="radio" class="form-check-input" name="horizontalRadio" id="horizontalRadio3"> <label class="form-check-label" for="horizontalRadio3">Advanced</label> </div> </div> </div> </fieldset> <button type="submit" class="btn btn-primary">Register</button> </form>

Horizontal form label sizing

<form>
  <div class="row mb-3">
    <label for="colFormLabelSmall" class="col-md-2 col-form-label col-form-label-sm">Small label</label>
    <div class="col-md-10">
      <input type="text" class="form-control form-control-sm" placeholder="Small form control" id="colFormLabelSmall">
    </div>
  </div>
  <div class="row mb-3">
    <label for="colFormLabelDefault" class="col-md-2 col-form-label">Default label</label>
    <div class="col-md-10">
      <input type="text" class="form-control" placeholder="Default form control" id="colFormLabelDefault">
    </div>
  </div>
  <div class="row mb-3">
    <label for="colFormLabelLarge" class="col-md-2 col-form-label col-form-label-lg">Large label</label>
    <div class="col-md-10">
      <input type="text" class="form-control form-control-lg" placeholder="Large form control" id="colFormLabelLarge">
    </div>
  </div>
</form>
<form> <div class="row mb-3"> <label for="colFormLabelSmall" class="col-md-2 col-form-label col-form-label-sm">Small label</label> <div class="col-md-10"> <input type="text" class="form-control form-control-sm" placeholder="Small form control" id="colFormLabelSmall"> </div> </div> <div class="row mb-3"> <label for="colFormLabelDefault" class="col-md-2 col-form-label">Default label</label> <div class="col-md-10"> <input type="text" class="form-control" placeholder="Default form control" id="colFormLabelDefault"> </div> </div> <div class="row mb-3"> <label for="colFormLabelLarge" class="col-md-2 col-form-label col-form-label-lg">Large label</label> <div class="col-md-10"> <input type="text" class="form-control form-control-lg" placeholder="Large form control" id="colFormLabelLarge"> </div> </div> </form>

Inline form

@
<form class="row row-cols-md-auto g-2 align-items-center">
  <div class="col-12">
    <label for="inlineInputGroup" class="visually-hidden">Usermame</label>
    <div class="input-group">
      <div class="input-group-text">@</div>
      <input type="text" class="form-control" placeholder="Username" id="inlineInputGroup">
    </div>
  </div>
  <div class="col-12">
    <label for="inlineInput" class="visually-hidden">Password</label>
    <input type="password" class="form-control" placeholder="Password" id="inlineInput">
  </div>
  <div class="col-12">
    <div class="form-check">
      <input type="checkbox" class="form-check-input" id="inlineCheck">
      <label class="form-check-label" for="inlineCheck">Remember me</label>
    </div>
  </div>
  <div class="col-12">
    <button type="submit" class="btn btn-primary">Log in</button>
  </div>
</form>
<form class="row row-cols-md-auto g-2 align-items-center"> <div class="col-12"> <label for="inlineInputGroup" class="visually-hidden">Usermame</label> <div class="input-group"> <div class="input-group-text">@</div> <input type="text" class="form-control" placeholder="Username" id="inlineInputGroup"> </div> </div> <div class="col-12"> <label for="inlineInput" class="visually-hidden">Password</label> <input type="password" class="form-control" placeholder="Password" id="inlineInput"> </div> <div class="col-12"> <div class="form-check"> <input type="checkbox" class="form-check-input" id="inlineCheck"> <label class="form-check-label" for="inlineCheck">Remember me</label> </div> </div> <div class="col-12"> <button type="submit" class="btn btn-primary">Log in</button> </div> </form>