Laktawan ti kangrunaan a linaon Laktawan ti docs navigation
in English

Dagiti Buton

Usaren dagiti kostumbre nga estilo ti buton ti Bootstrap para kadagiti tignay kadagiti porma, dialogo, ken dadduma pay nga addaan iti suporta para kadagiti adu a kadakkel, estado, ken dadduma pay.

Dagiti pagarigan

Ti Bootstrap ket mangiraman kadagiti sumagmamano a nasakbay a naikeddeng nga estilo ti buton, tunggal maysa ket agserbi ti bukodna a semantiko a panggep, nga addaan kadagiti sumagmamano nga ekstra a naipuruak para iti ad-adu a panagtengngel.

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

<button type="button" class="btn btn-link">Link</button>
Panangipaay ti kaipapanan kadagiti makatulong a teknolohia

Ti panagusar ti kolor tapno mangnayon ti kaipapanan ket mangipaay laeng ti makita a pakakitaan, a saan a maidanon kadagiti agar-aramat kadagiti makatulong a teknolohia – kas dagiti screen reader. Siguraduen a ti impormasion a naipasimudaag babaen ti kolor ket nalawag manipud iti linaon a mismo (kas pagarigan ti makita a teksto), wenno mairaman babaen dagiti alternatibo a wagas, a kas ti kanayonan a teksto a nailemmeng a kadua ti .visually-hiddenklase.

Isardeng ti panagbalkot ti teksto

No dimo kayat a mabalkot ti teksto ti buton, mabalinmo nga inayon ti .text-nowrapklase iti buton. Iti Sass, mabalinmo nga ikeddeng $btn-white-space: nowrapa mangbaldado ti panagbalkot ti teksto para iti tunggal maysa a buton.

Dagiti etiketa ti buton

Nadisenio dagiti .btnklase a mausar a kadua ti <button>elemento. Nupay kasta, mabalinmo pay nga usaren dagitoy a klase iti <a>wenno <input>dagiti elemento (nupay dagiti dadduma a browser ket mabalinda nga iyaplikar ti naiduma bassit a panagiparang).

No agus-usar kadagiti klase ti buton kadagiti <a>elemento a maus-usar a mangtignay ti panagusar iti uneg ti panid (kas ti agruprupsa a linaon), imbes a mangisilpo kadagiti baro a panid wenno dagiti benneg iti uneg ti agdama a panid, dagitoy a silpo ket rumbeng a maited ti a role="button"tapno maitutop a mangidanon ti panggepda kadagiti makatulong a teknolohia a kas ti dagiti agbasbasa iti iskrin.

Inaig
<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">

Dagiti buton ti balabala

Kasapulan ti maysa a buton, ngem saan a dagiti nadagsen a kolor ti likudan nga iyegda? Sukatan dagiti default a klase ti mangbalbaliw kadagiti .btn-outline-*mangikkat kadagiti amin a ladawan ti likudan ken dagiti kolor iti ania man a buton.

<button type="button" class="btn btn-outline-primary">Primary</button>
<button type="button" class="btn btn-outline-secondary">Secondary</button>
<button type="button" class="btn btn-outline-success">Success</button>
<button type="button" class="btn btn-outline-danger">Danger</button>
<button type="button" class="btn btn-outline-warning">Warning</button>
<button type="button" class="btn btn-outline-info">Info</button>
<button type="button" class="btn btn-outline-light">Light</button>
<button type="button" class="btn btn-outline-dark">Dark</button>
Dadduma kadagiti estilo ti buton ket agus-usar ti relatibo a nalawag a kolor ti sango, ken rumbeng laeng a mausar iti nasipnget a likudan tapno addaan iti umdas a panagdumaduma.

Dagiti Kadakkel

Magarbo a dakdakkel wenno basbassit a butones? Inayon .btn-lgwenno .btn-smpara kadagiti kanayonan a kadakkel.

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

Kasasaad ti baldado

Pagbalinen dagiti buton a kasla saan nga aktibo babaen ti pananginayon ti disabledboolean a kababalin iti ania man <button>nga elemento. Dagiti baldado a buton ket pointer-events: nonenagaplikarda iti, a manglapped ti panag-hover ken dagiti aktibo nga estado manipud iti panagtignay.

<button type="button" class="btn btn-lg btn-primary" disabled>Primary button</button>
<button type="button" class="btn btn-secondary btn-lg" disabled>Button</button>

Dagiti baldado a buton nga agus-usar ti <a>elemento ket agtigtignay a naiduma bassit:

  • <a>s dida suportaran ti disabledattribute, isu a masapul nga inayonmo ti .disabledklase tapno agparang a biswal a baldado.
  • Dadduma nga estilo a makaay-ayo iti masakbayan ti nairaman tapno mapasardeng amin pointer-eventskadagiti buton ti angkla.
  • Dagiti baldado a buton ket rumbeng a mangiraman ti aria-disabled="true"attribute tapno mangipakita ti kasasaad ti elemento kadagiti makatulong a teknolohia.
<a href="#" class="btn btn-primary btn-lg disabled" tabindex="-1" role="button" aria-disabled="true">Primary link</a>
<a href="#" class="btn btn-secondary btn-lg disabled" tabindex="-1" role="button" aria-disabled="true">Link</a>

Ti .disabledklase ket agus-usar pointer-events: nonea mangpadas a mangbaldado ti panagusar ti silpo ti <a>s, ngem dayta a tagikua ti CSS ket saan pay a naistandard. Mainayon pay, uray kadagiti browser a mangsuporta pointer-events: none, agtalinaed a saan a maapektaran ti panaglayag iti teklado, kayatna a sawen a dagiti makakita nga agus-usar iti teklado ken dagiti agus-usar kadagiti makatulong a teknolohia ket mabalinda latta nga aktiboen dagitoy a silpo. Isu a tapno natalged, malaksid iti aria-disabled="true", iraman pay ti maysa nga tabindex="-1"attribute kadagitoy a silpo tapno malapdan ida nga umawat iti pokus ti teklado, ken agusar iti kostumbre a JavaScript tapno interamente a mangbaldado iti panagandar dagitoy.

I-block dagiti buton

Mangaramid kadagiti responsive stack ti full-width, “block buttons” a kas kadagidiay adda iti Bootstrap 4 nga addaan iti panaglaok dagiti display ken gap utilities-tayo. Babaen ti panagusar kadagiti utilidad imbes a dagiti espesipiko a klase ti buton, addaantayo iti dakdakkel nga amang a panangtengngel iti panagsisina, panagtunos, ken dagiti makasungbat a kababalin.

<div class="d-grid gap-2">
  <button class="btn btn-primary" type="button">Button</button>
  <button class="btn btn-primary" type="button">Button</button>
</div>

Ditoy ket mangpartuat kami ti sumungbat a panagduduma, a mangrugi kadagiti bertikal a naurnong a buton aginggana ti mdbreakpoint, a sadiay .d-md-blockket mangsukat ti .d-gridklase, iti kasta ket mang-nullify ti gap-2utilidad. Baliwam ti kadakkel ti browser-mo tapno makitam nga agbaliwda.

<div class="d-grid gap-2 d-md-block">
  <button class="btn btn-primary" type="button">Button</button>
  <button class="btn btn-primary" type="button">Button</button>
</div>

Mabalinmo nga ilinteg ti kalawa dagiti buton ti blokemo babaen dagiti klase ti kalawa ti adigi ti grid. Kas pagarigan, para iti kagudua ti kalawana a “block button”, usaren ti .col-6. Isentro dayta a horizontal iti .mx-auto, met.

<div class="d-grid gap-2 col-6 mx-auto">
  <button class="btn btn-primary" type="button">Button</button>
  <button class="btn btn-primary" type="button">Button</button>
</div>

Mabalin nga usaren dagiti kanayonan a utilidad a mangbalbaliw iti pannakaitunos dagiti buton no horizontal. Ditoy nga innalami ti napalabas a responsive a pagariganmi ken innayonmi ti sumagmamano a flex utility ken ti margin utility iti buton tapno kannawan nga i-align dagiti buton no saandan a naurnong.

<div class="d-grid gap-2 d-md-flex justify-content-md-end">
  <button class="btn btn-primary me-md-2" type="button">Button</button>
  <button class="btn btn-primary" type="button">Button</button>
</div>

Plugin ti buton

Ti plugin ti buton ket mangipalubos kenka a mangpartuat kadagiti simple nga on/off toggle buttons.

Iti panagkita, dagitoy a buton ti panagbalbaliw ket agpapada kadagiti buton ti panagbalbaliw ti kahon ti tsek . Nupay kasta, dagitoy ket naiduma a maidanon babaen dagiti makatulong a teknolohia: dagiti panagbalbaliw ti kahon ti tsek ket maipakaammonto babaen dagiti agbasbasa ti iskrin a kas "na-check"/“saan a na-check” (gapu ta, iti laksid ti panagparangda, dagitoy ket pundamental pay laeng a kahon ti tsek), idinto a dagitoy a buton ti panagbalbaliw ket maipakaammo a kas “buton”/“napidut ti buton”. Ti panagpili iti nagbaetan dagitoy dua nga asidegan ket agpannurayto iti kita ti panagbalbaliw a parparnuaymo, ken no ti panagbalbaliw ket addaan wenno saan iti kaipapanan kadagiti agar-aramat no maipakaammo a kas maysa a kahon ti tsek wenno kas maysa nga aktual a buton.

Toggle dagiti estado

Add data-bs-toggle="button"to toggle ti activekasasaad ti maysa a buton. No pre-toggling-mo ti maysa a buton, masapul a manual nga inayonmo ti .activeklase ken aria-pressed="true" tapno masigurado a maidanon dayta a maitutop kadagiti makatulong a teknolohia.

<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>
<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>

Dagiti Pamay-an

Mabalinmo ti mangpartuat ti pagarigan ti buton babaen ti konstruktor ti buton, kas pagarigan:

var button = document.getElementById('myButton')
var bsButton = new bootstrap.Button(button)
Wagas Panangiladawan
toggle Toggles ti estado ti iduron. Ikkan ti buton ti langa a na-activate dayta.
dispose Dadaelenna ti buton ti maysa nga elemento. (Ikkaten ti naidulin a datos iti elemento ti DOM)
getInstance Estatiko a pamay-an a mangipalubos kenka a makaala ti pagarigan ti buton a nainaig iti maysa nga elemento ti DOM, mabalinmo nga usaren daytoy a kas iti daytoy:bootstrap.Button.getInstance(element)
getOrCreateInstance Estatiko a pamay-an a mangisubli ti maysa a pagarigan ti buton a nainaig iti maysa nga elemento ti DOM wenno mangpartuat ti baro no kas pagarigan saan a nairugi. Mabalinmo nga usaren a kastoy:bootstrap.Button.getOrCreateInstance(element)

Kas pagarigan, tapno mai-toggle amin a buton

var buttons = document.querySelectorAll('.btn')
buttons.forEach(function (button) {
  var button = new bootstrap.Button(button)
  button.toggle()
})

Sass nga

Dagiti Variable

$btn-padding-y:               $input-btn-padding-y;
$btn-padding-x:               $input-btn-padding-x;
$btn-font-family:             $input-btn-font-family;
$btn-font-size:               $input-btn-font-size;
$btn-line-height:             $input-btn-line-height;
$btn-white-space:             null; // Set to `nowrap` to prevent text wrapping

$btn-padding-y-sm:            $input-btn-padding-y-sm;
$btn-padding-x-sm:            $input-btn-padding-x-sm;
$btn-font-size-sm:            $input-btn-font-size-sm;

$btn-padding-y-lg:            $input-btn-padding-y-lg;
$btn-padding-x-lg:            $input-btn-padding-x-lg;
$btn-font-size-lg:            $input-btn-font-size-lg;

$btn-border-width:            $input-btn-border-width;

$btn-font-weight:             $font-weight-normal;
$btn-box-shadow:              inset 0 1px 0 rgba($white, .15), 0 1px 1px rgba($black, .075);
$btn-focus-width:             $input-btn-focus-width;
$btn-focus-box-shadow:        $input-btn-focus-box-shadow;
$btn-disabled-opacity:        .65;
$btn-active-box-shadow:       inset 0 3px 5px rgba($black, .125);

$btn-link-color:              $link-color;
$btn-link-hover-color:        $link-hover-color;
$btn-link-disabled-color:     $gray-600;

// Allows for customizing button radius independently from global border radius
$btn-border-radius:           $border-radius;
$btn-border-radius-sm:        $border-radius-sm;
$btn-border-radius-lg:        $border-radius-lg;

$btn-transition:              color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;

$btn-hover-bg-shade-amount:       15%;
$btn-hover-bg-tint-amount:        15%;
$btn-hover-border-shade-amount:   20%;
$btn-hover-border-tint-amount:    10%;
$btn-active-bg-shade-amount:      20%;
$btn-active-bg-tint-amount:       20%;
$btn-active-border-shade-amount:  25%;
$btn-active-border-tint-amount:   10%;

Dagiti Mixin

Adda dagiti tallo a mixin para kadagiti buton: dagiti buton ken dagiti buton a balabala a variant mixin (agpada a naibatay iti $theme-colors), agraman ti maysa a mixin ti kadakkel ti buton.

@mixin button-variant(
  $background,
  $border,
  $color: color-contrast($background),
  $hover-background: if($color == $color-contrast-light, shade-color($background, $btn-hover-bg-shade-amount), tint-color($background, $btn-hover-bg-tint-amount)),
  $hover-border: if($color == $color-contrast-light, shade-color($border, $btn-hover-border-shade-amount), tint-color($border, $btn-hover-border-tint-amount)),
  $hover-color: color-contrast($hover-background),
  $active-background: if($color == $color-contrast-light, shade-color($background, $btn-active-bg-shade-amount), tint-color($background, $btn-active-bg-tint-amount)),
  $active-border: if($color == $color-contrast-light, shade-color($border, $btn-active-border-shade-amount), tint-color($border, $btn-active-border-tint-amount)),
  $active-color: color-contrast($active-background),
  $disabled-background: $background,
  $disabled-border: $border,
  $disabled-color: color-contrast($disabled-background)
) {
  color: $color;
  @include gradient-bg($background);
  border-color: $border;
  @include box-shadow($btn-box-shadow);

  &:hover {
    color: $hover-color;
    @include gradient-bg($hover-background);
    border-color: $hover-border;
  }

  .btn-check:focus + &,
  &:focus {
    color: $hover-color;
    @include gradient-bg($hover-background);
    border-color: $hover-border;
    @if $enable-shadows {
      @include box-shadow($btn-box-shadow, 0 0 0 $btn-focus-width rgba(mix($color, $border, 15%), .5));
    } @else {
      // Avoid using mixin so we can pass custom focus shadow properly
      box-shadow: 0 0 0 $btn-focus-width rgba(mix($color, $border, 15%), .5);
    }
  }

  .btn-check:checked + &,
  .btn-check:active + &,
  &:active,
  &.active,
  .show > &.dropdown-toggle {
    color: $active-color;
    background-color: $active-background;
    // Remove CSS gradients if they're enabled
    background-image: if($enable-gradients, none, null);
    border-color: $active-border;

    &:focus {
      @if $enable-shadows {
        @include box-shadow($btn-active-box-shadow, 0 0 0 $btn-focus-width rgba(mix($color, $border, 15%), .5));
      } @else {
        // Avoid using mixin so we can pass custom focus shadow properly
        box-shadow: 0 0 0 $btn-focus-width rgba(mix($color, $border, 15%), .5);
      }
    }
  }

  &:disabled,
  &.disabled {
    color: $disabled-color;
    background-color: $disabled-background;
    // Remove CSS gradients if they're enabled
    background-image: if($enable-gradients, none, null);
    border-color: $disabled-border;
  }
}
@mixin button-outline-variant(
  $color,
  $color-hover: color-contrast($color),
  $active-background: $color,
  $active-border: $color,
  $active-color: color-contrast($active-background)
) {
  color: $color;
  border-color: $color;

  &:hover {
    color: $color-hover;
    background-color: $active-background;
    border-color: $active-border;
  }

  .btn-check:focus + &,
  &:focus {
    box-shadow: 0 0 0 $btn-focus-width rgba($color, .5);
  }

  .btn-check:checked + &,
  .btn-check:active + &,
  &:active,
  &.active,
  &.dropdown-toggle.show {
    color: $active-color;
    background-color: $active-background;
    border-color: $active-border;

    &:focus {
      @if $enable-shadows {
        @include box-shadow($btn-active-box-shadow, 0 0 0 $btn-focus-width rgba($color, .5));
      } @else {
        // Avoid using mixin so we can pass custom focus shadow properly
        box-shadow: 0 0 0 $btn-focus-width rgba($color, .5);
      }
    }
  }

  &:disabled,
  &.disabled {
    color: $color;
    background-color: transparent;
  }
}
@mixin button-size($padding-y, $padding-x, $font-size, $border-radius) {
  padding: $padding-y $padding-x;
  @include font-size($font-size);
  // Manually declare to provide an override to the browser default
  @include border-radius($border-radius, 0);
}

Dagiti loop

Dagiti variante ti buton (para kadagiti regular ken dagiti buton ti balabala) ket agus-usar kadagiti bukodda a mixin iti $theme-colorsmapami tapno mangpataud kadagiti klase ti mangbalbaliw iti scss/_buttons.scss.

@each $color, $value in $theme-colors {
  .btn-#{$color} {
    @include button-variant($value, $value);
  }
}

@each $color, $value in $theme-colors {
  .btn-outline-#{$color} {
    @include button-outline-variant($value);
  }
}