Hälytykset
Tarjoa asiayhteyteen liittyviä palauteviestejä tyypillisistä käyttäjän toimista kourallisen saatavilla olevien ja joustavien hälytysviestien avulla.
Esimerkkejä
Hälytykset ovat saatavilla minkä tahansa pituisesta tekstistä sekä valinnainen sulkemispainike. Oikean tyylin saamiseksi käytä yhtä kahdeksasta vaaditusta kontekstuaalisesta luokasta (esim. .alert-success
). Käytä ilmoitusten poistamiseen JavaScript-laajennusta .
<div class="alert alert-primary" role="alert">
A simple primary alert—check it out!
</div>
<div class="alert alert-secondary" role="alert">
A simple secondary alert—check it out!
</div>
<div class="alert alert-success" role="alert">
A simple success alert—check it out!
</div>
<div class="alert alert-danger" role="alert">
A simple danger alert—check it out!
</div>
<div class="alert alert-warning" role="alert">
A simple warning alert—check it out!
</div>
<div class="alert alert-info" role="alert">
A simple info alert—check it out!
</div>
<div class="alert alert-light" role="alert">
A simple light alert—check it out!
</div>
<div class="alert alert-dark" role="alert">
A simple dark alert—check it out!
</div>
Tarkoituksen välittäminen avustaville tekniikoille
Värien käyttö merkityksen lisäämiseen antaa vain visuaalisen osoituksen, jota ei välitetä avustavien tekniikoiden, kuten näytönlukijoiden, käyttäjille. Varmista, että värillä merkitty tieto näkyy joko itsestään sisällöstä (esim. näkyvä teksti) tai sisällytetään vaihtoehtoisin keinoin, kuten .visually-hidden
luokan mukana piilotettu lisäteksti.
Linkin väri
Käytä .alert-link
hyödyllisyysluokkaa tarjotaksesi nopeasti vastaavia värillisiä linkkejä mihin tahansa hälytykseen.
<div class="alert alert-primary" role="alert">
A simple primary alert with <a href="#" class="alert-link">an example link</a>. Give it a click if you like.
</div>
<div class="alert alert-secondary" role="alert">
A simple secondary alert with <a href="#" class="alert-link">an example link</a>. Give it a click if you like.
</div>
<div class="alert alert-success" role="alert">
A simple success alert with <a href="#" class="alert-link">an example link</a>. Give it a click if you like.
</div>
<div class="alert alert-danger" role="alert">
A simple danger alert with <a href="#" class="alert-link">an example link</a>. Give it a click if you like.
</div>
<div class="alert alert-warning" role="alert">
A simple warning alert with <a href="#" class="alert-link">an example link</a>. Give it a click if you like.
</div>
<div class="alert alert-info" role="alert">
A simple info alert with <a href="#" class="alert-link">an example link</a>. Give it a click if you like.
</div>
<div class="alert alert-light" role="alert">
A simple light alert with <a href="#" class="alert-link">an example link</a>. Give it a click if you like.
</div>
<div class="alert alert-dark" role="alert">
A simple dark alert with <a href="#" class="alert-link">an example link</a>. Give it a click if you like.
</div>
Lisäsisältö
Hälytykset voivat sisältää myös muita HTML-elementtejä, kuten otsikoita, kappaleita ja jakajia.
Hyvin tehty!
Aww joo, luit onnistuneesti tämän tärkeän hälytysviestin. Tämä esimerkkiteksti kestää hieman pidempään, jotta näet, kuinka hälytyksen välilyönti toimii tämäntyyppisen sisällön kanssa.
Aina kun tarvitset, muista käyttää marginaaliapuohjelmia pitääksesi asiat kauniina ja siistinä.
<div class="alert alert-success" role="alert">
<h4 class="alert-heading">Well done!</h4>
<p>Aww yeah, you successfully read this important alert message. This example text is going to run a bit longer so that you can see how spacing within an alert works with this kind of content.</p>
<hr>
<p class="mb-0">Whenever you need to, be sure to use margin utilities to keep things nice and tidy.</p>
</div>
Kuvakkeet
Samoin voit käyttää flexbox-apuohjelmia ja Bootstrap-kuvakkeita luodaksesi hälytyksiä kuvakkeilla. Kuvakkeistasi ja sisällöstäsi riippuen saatat haluta lisätä apuohjelmia tai mukautettuja tyylejä.
<div class="alert alert-primary d-flex align-items-center" role="alert">
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="bi bi-exclamation-triangle-fill flex-shrink-0 me-2" viewBox="0 0 16 16" role="img" aria-label="Warning:">
<path d="M8.982 1.566a1.13 1.13 0 0 0-1.96 0L.165 13.233c-.457.778.091 1.767.98 1.767h13.713c.889 0 1.438-.99.98-1.767L8.982 1.566zM8 5c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 5.995A.905.905 0 0 1 8 5zm.002 6a1 1 0 1 1 0 2 1 1 0 0 1 0-2z"/>
</svg>
<div>
An example alert with an icon
</div>
</div>
Tarvitsetko useamman kuin yhden kuvakkeen hälytyksiä varten? Harkitse useampien Bootstrap-kuvakkeiden käyttöä ja paikallisen SVG-spraitin tekemistä, jotta voit viitata samoihin kuvakkeisiin toistuvasti.
<svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
<symbol id="check-circle-fill" fill="currentColor" viewBox="0 0 16 16">
<path d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z"/>
</symbol>
<symbol id="info-fill" fill="currentColor" viewBox="0 0 16 16">
<path d="M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16zm.93-9.412-1 4.705c-.07.34.029.533.304.533.194 0 .487-.07.686-.246l-.088.416c-.287.346-.92.598-1.465.598-.703 0-1.002-.422-.808-1.319l.738-3.468c.064-.293.006-.399-.287-.47l-.451-.081.082-.381 2.29-.287zM8 5.5a1 1 0 1 1 0-2 1 1 0 0 1 0 2z"/>
</symbol>
<symbol id="exclamation-triangle-fill" fill="currentColor" viewBox="0 0 16 16">
<path d="M8.982 1.566a1.13 1.13 0 0 0-1.96 0L.165 13.233c-.457.778.091 1.767.98 1.767h13.713c.889 0 1.438-.99.98-1.767L8.982 1.566zM8 5c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 5.995A.905.905 0 0 1 8 5zm.002 6a1 1 0 1 1 0 2 1 1 0 0 1 0-2z"/>
</symbol>
</svg>
<div class="alert alert-primary d-flex align-items-center" role="alert">
<svg class="bi flex-shrink-0 me-2" width="24" height="24" role="img" aria-label="Info:"><use xlink:href="#info-fill"/></svg>
<div>
An example alert with an icon
</div>
</div>
<div class="alert alert-success d-flex align-items-center" role="alert">
<svg class="bi flex-shrink-0 me-2" width="24" height="24" role="img" aria-label="Success:"><use xlink:href="#check-circle-fill"/></svg>
<div>
An example success alert with an icon
</div>
</div>
<div class="alert alert-warning d-flex align-items-center" role="alert">
<svg class="bi flex-shrink-0 me-2" width="24" height="24" role="img" aria-label="Warning:"><use xlink:href="#exclamation-triangle-fill"/></svg>
<div>
An example warning alert with an icon
</div>
</div>
<div class="alert alert-danger d-flex align-items-center" role="alert">
<svg class="bi flex-shrink-0 me-2" width="24" height="24" role="img" aria-label="Danger:"><use xlink:href="#exclamation-triangle-fill"/></svg>
<div>
An example danger alert with an icon
</div>
</div>
Hylkääminen
Alert JavaScript -laajennuksella on mahdollista hylätä kaikki ilmoitukset. Näin:
- Varmista, että olet ladannut hälytyslaajennuksen tai käännetyn Bootstrap JavaScriptin.
- Lisää sulkemispainike ja
.alert-dismissible
luokka, joka lisää ylimääräistä täyttöä hälytyksen oikealle puolelle ja sijoittaa sulkemispainikkeen. - Lisää sulkemispainikkeeseen
data-bs-dismiss="alert"
attribuutti, joka käynnistää JavaScript-toiminnon. Muista käyttää<button>
elementtiä sen kanssa, jotta se toimii oikein kaikissa laitteissa. - Jos haluat animoida hälytyksiä, kun hylkäät ne, muista lisätä
.fade
ja.show
luokat.
Voit nähdä tämän toiminnassa live-demon avulla:
<div class="alert alert-warning alert-dismissible fade show" role="alert">
<strong>Holy guacamole!</strong> You should check in on some of those fields below.
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button>
</div>
closed.bs.alert
tapahtumaa ja asettaa ohjelmallisesti
focus()
sopivimman sijainnin sivulla. Jos aiot siirtää kohdistuksen ei-interaktiiviseen elementtiin, joka ei normaalisti saa tarkennusta, muista lisätä
tabindex="-1"
elementtiin.
Sass
Muuttujat
$alert-padding-y: $spacer;
$alert-padding-x: $spacer;
$alert-margin-bottom: 1rem;
$alert-border-radius: $border-radius;
$alert-link-font-weight: $font-weight-bold;
$alert-border-width: $border-width;
$alert-bg-scale: -80%;
$alert-border-scale: -70%;
$alert-color-scale: 40%;
$alert-dismissible-padding-r: $alert-padding-x * 3; // 3x covers width of x plus default padding on either side
Varianttien sekoitus
Käytetään yhdessä $theme-colors
luomaan kontekstuaalisia muokkausluokkia hälytyksillemme.
@mixin alert-variant($background, $border, $color) {
color: $color;
@include gradient-bg($background);
border-color: $border;
.alert-link {
color: shade-color($color, 20%);
}
}
Silmukka
Silmukka, joka luo modifiointiluokat alert-variant()
mixinin kanssa.
// Generate contextual modifier classes for colorizing the alert.
@each $state, $value in $theme-colors {
$alert-background: shift-color($value, $alert-bg-scale);
$alert-border: shift-color($value, $alert-border-scale);
$alert-color: shift-color($value, $alert-color-scale);
@if (contrast-ratio($alert-background, $alert-color) < $min-contrast-ratio) {
$alert-color: mix($value, color-contrast($alert-background), abs($alert-color-scale));
}
.alert-#{$state} {
@include alert-variant($alert-background, $alert-border, $alert-color);
}
}
JavaScript-käyttäytyminen
Liipaisimet
Ota hälytyksen hylkääminen käyttöön JavaScriptin kautta:
var alertList = document.querySelectorAll('.alert')
alertList.forEach(function (alert) {
new bootstrap.Alert(alert)
})
Tai attribuutit ilmoituksendata
painikkeessa , kuten yllä on osoitettu:
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button>
Huomaa, että hälytyksen sulkeminen poistaa sen DOM:sta.
menetelmät
Voit luoda hälytysinstanssin hälytyskonstruktorilla, esimerkiksi:
var myAlert = document.getElementById('myAlert')
var bsAlert = new bootstrap.Alert(myAlert)
Tämä saa hälytyksen kuuntelemaan napsautustapahtumia jälkeläisissä elementeissä, joilla on data-bs-dismiss="alert"
attribuutti. (Ei välttämätöntä data-api:n automaattista alustusta käytettäessä.)
Menetelmä | Kuvaus |
---|---|
close |
Sulkee hälytyksen poistamalla sen DOM:sta. Jos elementissä on luokat .fade ja .show , hälytys häviää ennen kuin se poistetaan. |
dispose |
Tuhoaa elementin hälytyksen. (Poistaa DOM-elementtiin tallennetut tiedot) |
getInstance |
Staattinen menetelmä, jonka avulla voit saada DOM-elementtiin liittyvän hälytysinstanssin, voit käyttää sitä seuraavasti:bootstrap.Alert.getInstance(alert) |
getOrCreateInstance |
Staattinen menetelmä, joka palauttaa DOM-elementtiin liittyvän hälytysinstanssin tai luo uuden, jos sitä ei ole alustettu. Voit käyttää sitä näin:bootstrap.Alert.getOrCreateInstance(element) |
var alertNode = document.querySelector('.alert')
var alert = bootstrap.Alert.getInstance(alertNode)
alert.close()
Tapahtumat
Bootstrapin hälytyslaajennus paljastaa muutamia tapahtumia, jotka liittyvät hälytystoimintoihin.
Tapahtuma | Kuvaus |
---|---|
close.bs.alert |
Käynnistyy välittömästi, kun close instanssimenetelmää kutsutaan. |
closed.bs.alert |
Käynnistetään, kun hälytys on suljettu ja CSS-siirrot on suoritettu. |
var myAlert = document.getElementById('myAlert')
myAlert.addEventListener('closed.bs.alert', function () {
// do something, for instance, explicitly move focus to the most appropriate element,
// so it doesn't get lost/reset to the start of the page
// document.getElementById('...').focus()
})