0
0
mirror of https://github.com/twbs/bootstrap.git synced 2024-11-30 12:24:19 +01:00
Bootstrap/site/content/docs/4.3/components/alerts.md
Mark Otto aaf03bdc9e
v5: Forms update (#28450)
* Initial spike of consolidated form checks

* Stub out forms rearrangement

- Prepping to drop non-custom file and range inputs
- Prepping to merge custom and native checks and radios (with switches)
- Prepping to merge custom select with form select
- Moving docs arround so forms has it's own area given volume of CSS

* Move input group Sass file to forms subdir

* Start to split and move the docs around

* Simpler imports

* Copyediting

* delete overview file

* Remove commented out code

* remove the custom-forms import

* rewrite flex-check as form-check, replace all custom properties

* Remove old forms doc

* stub out new subpage link section

* update migration guide

* Update nav, forms overview in page nav, and descriptions

* fix check bg position

* fix margin-top calculation

* rename .custom-select to .form-select

* Update validation styles for new checks

* add some vertical margin, fix inline checks

* fix docs examples

* better way to do this contents stuff, redo the toc while i'm at it

* page restyle for docs while here

* un-callout that, edit text

* redo padding on toc

* fix toc

* start to cleanup checks docs

* Rewrite Markdown tables into HTML

* Redesign tables, redo their docs

* Replace Open Iconic icons with custom Bootstrap icons

* Redesign the docs navbar, add a subheader, redo the sidebar

* Redesign docs homepage a bit

* Simplify table style overrides for docs tables

* Simplify docs typography for page titles and reading line length

* Stub out icons page

* Part of sidebar update, remove migration from nav.yml

* Move toc CSS to separate partial

* Change appearance of overview page

* fix sidebar arrow direction

* Add footer to docs layout

* Update descriptions

* Drop the .form-group class for margin utilities

* Remove lingering form-group-margin-bottom var

* improve footer spacing

* add headings to range page

* uncomment form range css

* Rename .custom-range to .form-range

* Drop unused docs var

* Uncomment the comment

* Remove unused variable

* Fix radio image sizing

* Reboot update: reset horizontal ul and ol padding

* de-dupe IDs

* tweak toc styles

* nvm, fix dropdown versions stuff

* remove sidebar nav toggle for now

* broken html

* fix more broken html, move css

* scss linting

* comment out broken helper docs

* scope styles

* scope styles

* Fixes #25540 and fixes #26407 for v5 only

* Update sidebar once more

* Match new sidenav order

* fix syntax error

* Rename custom-file to form-file, update paths, update migration docs for previous changes in #28696

* rename back

* fix size and alignment

* rename that back too
2019-07-12 16:52:33 -05:00

5.4 KiB
Raw Blame History

layout title description group aliases toc
docs Alerts Provide contextual feedback messages for typical user actions with the handful of available and flexible alert messages. components
/components/
/docs/4.3/components/
true

Examples

Alerts are available for any length of text, as well as an optional dismiss button. For proper styling, use one of the eight required contextual classes (e.g., .alert-success). For inline dismissal, use the alerts JavaScript plugin.

{{< example >}} {{< alerts.inline >}} {{- range (index $.Site.Data "theme-colors") }}

A simple {{ .name }} alert—check it out!
{{- end -}} {{< /alerts.inline >}} {{< /example >}}

{{< callout info >}} {{< partial "callout-warning-color-assistive-technologies.md" >}} {{< /callout >}}

Use the .alert-link utility class to quickly provide matching colored links within any alert.

{{< example >}} {{< alerts.inline >}} {{- range (index $.Site.Data "theme-colors") }}

A simple {{ .name }} alert with an example link. Give it a click if you like.
{{ end -}} {{< /alerts.inline >}} {{< /example >}}

Additional content

Alerts can also contain additional HTML elements like headings, paragraphs and dividers.

{{< example >}}

Well done!

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.


Whenever you need to, be sure to use margin utilities to keep things nice and tidy.

{{< /example >}}

Dismissing

Using the alert JavaScript plugin, it's possible to dismiss any alert inline. Here's how:

  • Be sure you've loaded the alert plugin, or the compiled Bootstrap JavaScript.
  • Add a dismiss button and the .alert-dismissible class, which adds extra padding to the right of the alert and positions the .close button.
  • On the dismiss button, add the data-dismiss="alert" attribute, which triggers the JavaScript functionality. Be sure to use the <button> element with it for proper behavior across all devices.
  • To animate alerts when dismissing them, be sure to add the .fade and .show classes.

You can see this in action with a live demo:

{{< example >}}

Holy guacamole! You should check in on some of those fields below.
{{< /example >}}

JavaScript behavior

Triggers

Enable dismissal of an alert via JavaScript:

{{< highlight js >}} var alertList = document.querySelectorAll('.alert') alertList.forEach(function (alert) { new bootstrap.Alert(alert) }) {{< /highlight >}}

Or with data attributes on a button within the alert, as demonstrated above:

{{< highlight html >}} {{< /highlight >}}

Note that closing an alert will remove it from the DOM.

Methods

You can create an alert instance with the alert constructor, for example:

{{< highlight js >}} var myAlert = document.getElementById('myAlert') var bsAlert = new bootstrap.Alert(myAlert) {{< /highlight >}}

This makes an alert listen for click events on descendant elements which have the data-dismiss="alert" attribute. (Not necessary when using the data-api's auto-initialization.)

Method Description
close Closes an alert by removing it from the DOM. If the .fade and .show classes are present on the element, the alert will fade out before it is removed.
dispose Destroys an element's alert.
_getInstance Static method which allows you to get the alert instance associated to a DOM element, you can use it like this: bootstrap.Alert._getInstance(alert)

{{< highlight js >}} var alertNode = document.querySelector('.alert') var alert = bootstrap.Alert._getInstance(alertNode) alert.close() {{< /highlight >}}

Events

Bootstrap's alert plugin exposes a few events for hooking into alert functionality.

Event Description
close.bs.alert Fires immediately when the close instance method is called.
closed.bs.alert Fired when the alert has been closed and CSS transitions have completed.

{{< highlight js >}} var myAlert = document.getElementById('myAlert') myAlert.addEventListener('closed.bs.alert', function () { // do something… }) {{< /highlight >}}