Buttons

LeptonX uses Bootstrap Button's component's latest version.
Use Bootstrap’s custom button styles for actions in forms, dialogs, and more with support for multiple sizes, states, and more.

Examples

Bootstrap includes several predefined button styles, each serving its own semantic purpose, with a few extras thrown in for more control.

Preview
HTML
<button type="button" class="btn btn-primary mb-1">Primary</button>
<button type="button" class="btn btn-secondary mb-1">Secondary</button>
<button type="button" class="btn btn-success mb-1">Success</button>
<button type="button" class="btn btn-danger mb-1">Danger</button>
<button type="button" class="btn btn-warning mb-1">Warning</button>
<button type="button" class="btn btn-info mb-1">Info</button>
<button type="button" class="btn btn-light mb-1">Light</button>
<button type="button" class="btn btn-dark mb-1">Dark</button>
<button type="button" class="btn btn-link mb-1">Link</button>
 

Button tags

The .btn classes are designed to be used with the <button> element. However, you can also use these classes on <a> or <input> elements (though some browsers may apply a slightly different rendering).

When using button classes on <a> elements that are used to trigger in-page functionality (like collapsing content), rather than linking to new pages or sections within the current page, these links should be given a role="button" to appropriately convey their purpose to assistive technologies such as screen readers.

Preview
Link
HTML
<a class="btn btn-primary" href="#" role="button">Link</a>
<button class="btn btn-primary" type="submit">Button</button>
<input class="btn btn-primary" type="button" value="Input" />
<input class="btn btn-primary" type="submit" value="Submit" />
<input class="btn btn-primary" type="reset" value="Reset" />
 

Outline

In need of a button, but not the hefty background colors they bring? Replace the default modifier classes with the .btn-outline-* ones to remove all background images and colors on any button.

Preview
HTML
<button type="button" class="btn btn-outline-primary mb-1">Primary</button>
<button type="button" class="btn btn-outline-secondary mb-1">Secondary</button>
<button type="button" class="btn btn-outline-success mb-1">Success</button>
<button type="button" class="btn btn-outline-danger mb-1">Danger</button>
<button type="button" class="btn btn-outline-warning mb-1">Warning</button>
<button type="button" class="btn btn-outline-info mb-1">Info</button>
<button type="button" class="btn btn-outline-light mb-1">Light</button>
<button type="button" class="btn btn-outline-dark mb-1">Dark</button>
 

Grey

Use grey class to have a custom button style with a grey background color and dark font color.

Preview
HTML
<button type="button" class="btn btn-primary grey mb-1">Primary</button>
<button type="button" class="btn btn-secondary grey mb-1">Secondary</button>
<button type="button" class="btn btn-success grey mb-1">Success</button>
<button type="button" class="btn btn-danger grey mb-1">Danger</button>
<button type="button" class="btn btn-warning grey mb-1">Warning</button>
<button type="button" class="btn btn-info grey mb-1">Info</button>
<button type="button" class="btn btn-light grey mb-1">Light</button>
<button type="button" class="btn btn-dark grey mb-1">Dark</button>
 

Soft

Use soft class to have a custom button style with a lighter background color and dark font color.

Preview
HTML
<button type="button" class="btn btn-primary soft mb-1">Primary</button>
<button type="button" class="btn btn-secondary soft mb-1">Secondary</button>
<button type="button" class="btn btn-success soft mb-1">Success</button>
<button type="button" class="btn btn-danger soft mb-1">Danger</button>
<button type="button" class="btn btn-warning soft mb-1">Warning</button>
<button type="button" class="btn btn-info soft mb-1">Info</button>
<button type="button" class="btn btn-light soft mb-1">Light</button>
<button type="button" class="btn btn-dark soft mb-1">Dark</button>
 

Sizes

Fancy larger or smaller buttons? Add .btn-lg or .btn-sm for additional sizes.

Preview
HTML
<button type="button" class="btn btn-primary btn-lg mb-1">Large button</button>
<button type="button" class="btn btn-secondary btn-lg mb-1">
  Large button
</button>
<button type="button" class="btn btn-primary btn-sm mb-1">Small button</button>
<button type="button" class="btn btn-secondary btn-sm mb-1">
  Small button
</button>
 

Active & Disabled States

Make buttons look inactive by adding the disabled boolean attribute to any <button> element. Disabled buttons have pointer-events: none applied to, preventing hover and active states from triggering.

Disabled buttons using the <a> element behave a bit different:

  • <a>s don’t support the disabled attribute, so you must add the .disabled class to make it visually appear disabled.
  • Some future-friendly styles are included to disable all pointer-events on anchor buttons.
  • Disabled buttons should include the aria-disabled="true" attribute to indicate the state of the element to assistive technologies.
Preview

Primary link Link
HTML
<button class="active btn btn-primary btn-lg mb-1" type="button">
  <span>Primary button</span>
</button>
<button class="active btn btn-secondary btn-lg mb-1" type="button">
  <span>Button</span></button
><br />
<button class="btn btn-primary btn-lg mb-1" disabled="disabled" type="button">
  <span>Primary button</span>
</button>
<button class="btn btn-secondary btn-lg mb-1" disabled="disabled" type="button">
  <span>Button</span>
</button>
<a
  href="#"
  class="btn btn-primary btn-lg disabled mb-1"
  tabindex="-1"
  role="button"
  aria-disabled="true"
  >Primary link</a
>
<a
  href="#"
  class="btn btn-secondary btn-lg disabled mb-1"
  tabindex="-1"
  role="button"
  aria-disabled="true"
  >Link</a
>
 

Block buttons

Create responsive stacks of full-width, “block buttons” like those in Bootstrap 4 with a mix of our display and gap utilities. By using utilities instead of button specific classes, we have much greater control over spacing, alignment, and responsive behaviors.

Here we create a responsive variation, starting with vertically stacked buttons until the md breakpoint, where .d-md-block replaces the .d-grid class, thus nullifying the gap-2 utility. Resize your browser to see them change.

You can adjust the width of your block buttons with grid column width classes. For example, for a half-width “block button”, use .col-6. Center it horizontally with .mx-auto, too.

Additional utilities can be used to adjust the alignment of buttons when horizontal. Here we’ve taken our previous responsive example and added some flex utilities and a margin utility on the button to right align the buttons when they’re no longer stacked.

Preview
HTML
<div class="d-grid gap-2 mb-3">
  <button class="btn btn-primary" type="button">Button</button>
  <button class="btn btn-primary" type="button">Button</button>
</div>
<div class="d-grid gap-2 d-md-block mb-3">
  <button class="btn btn-primary" type="button">Button</button>
  <button class="btn btn-primary" type="button">Button</button>
</div>
<div class="d-grid gap-2 col-6 mx-auto mb-3">
  <button class="btn btn-primary" type="button">Button</button>
  <button class="btn btn-primary" type="button">Button</button>
</div>
<div class="d-grid gap-2 d-md-flex justify-content-md-end">
  <button class="btn btn-primary" type="button">Button</button>
  <button class="btn btn-primary" type="button">Button</button>
</div>
 

Toggle states

Add data-bs-toggle="button" to toggle a button’s active state. If you’re pre-toggling a button, you must manually add the .active class and aria-pressed="true" to ensure that it is conveyed appropriately to assistive technologies.

Preview
HTML
<div class="mb-2">
  <button
    type="button"
    class="btn btn-primary"
    data-bs-toggle="button"
    autocomplete="off"
  >
    Toggle button
  </button>
  <button
    type="button"
    class="btn btn-primary active"
    data-bs-toggle="button"
    autocomplete="off"
    aria-pressed="true"
  >
    Active toggle button
  </button>
  <button
    type="button"
    class="btn btn-primary"
    disabled
    data-bs-toggle="button"
    autocomplete="off"
  >
    Disabled toggle button
  </button>
</div>
<div>
  <a href="#" class="btn btn-primary" role="button" data-bs-toggle="button"
    >Toggle link</a
  >
  <a
    href="#"
    class="btn btn-primary active"
    role="button"
    data-bs-toggle="button"
    aria-pressed="true"
    >Active toggle link</a
  >
  <a
    href="#"
    class="btn btn-primary disabled"
    tabindex="-1"
    aria-disabled="true"
    role="button"
    data-bs-toggle="button"
    >Disabled toggle link</a
  >
</div>
 

Icons

Preview
HTML
<button class="btn btn-warning" type="button">
  <i class="bi bi-pencil"></i> <span>Edit</span>
</button>
<button class="btn btn-info" type="button">
  <i class="bi bi-info-circle"></i> <span>Information</span>
</button>