2014-07-12 07:34:47 +02:00
---
2015-08-15 07:45:55 +02:00
layout: docs
2014-07-12 07:34:47 +02:00
title: Alerts
2016-10-03 03:19:47 +02:00
description: Provide contextual feedback messages for typical user actions with the handful of available and flexible alert messages.
2015-08-06 02:47:45 +02:00
group: components
2017-05-28 08:01:14 +02:00
toc: true
2014-07-12 07:34:47 +02:00
---
2015-04-18 04:51:15 +02:00
## Examples
2015-04-17 01:56:40 +02:00
2017-08-17 18:01:51 +02:00
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 jQuery plugin ](#dismissing ).
2014-07-12 07:34:47 +02:00
{% example html %}
2017-06-26 03:22:51 +02:00
{% for color in site.data.theme-colors %}
< div class = "alert alert-{{ color.name }}" role = "alert" >
This is a {{ color.name }} alert—check it out!
< / div > {% endfor %}
2014-07-12 07:34:47 +02:00
{% endexample %}
2016-02-17 11:22:48 +01:00
{% capture callout-include %}{% include callout-warning-color-assistive-technologies.md %}{% endcapture %}
{{ callout-include | markdownify }}
2014-07-12 07:34:47 +02:00
### Link color
Use the `.alert-link` utility class to quickly provide matching colored links within any alert.
{% example html %}
2017-06-26 03:22:51 +02:00
{% for color in site.data.theme-colors %}
< div class = "alert alert-{{ color.name }}" role = "alert" >
This is a {{ color.name }} alert with < a href = "#" class = "alert-link" > an example link< / a > . Give it a click if you like.
< / div > {% endfor %}
2014-07-12 07:34:47 +02:00
{% endexample %}
2015-03-31 05:50:34 +02:00
2016-02-04 05:43:12 +01:00
### Additional content
2017-01-16 06:33:32 +01:00
Alerts can also contain additional HTML elements like headings, paragraphs and dividers.
2016-02-04 05:43:12 +01:00
{% example html %}
< 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 >
2017-01-16 06:33:32 +01:00
< hr >
2016-09-09 07:16:28 +02:00
< p class = "mb-0" > Whenever you need to, be sure to use margin utilities to keep things nice and tidy.< / p >
2016-02-04 05:43:12 +01:00
< / div >
{% endexample %}
2015-04-18 04:51:15 +02:00
### Dismissing
2015-03-31 05:50:34 +02:00
2015-04-18 04:51:15 +02:00
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.
2017-08-11 15:26:51 +02:00
- If you're building our JS from source, it [requires `util.js` ]({{ site.baseurl }}/docs/{{ site.docs_version }}/getting-started/javascript/#util ). The compiled version includes this.
2015-04-18 04:51:15 +02:00
- 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.
2016-10-28 00:13:17 +02:00
- To animate alerts when dismissing them, be sure to add the `.fade` and `.show` classes.
2015-04-18 04:51:15 +02:00
You can see this in action with a live demo:
2015-03-31 05:50:34 +02:00
{% example html %}
2016-10-28 00:13:17 +02:00
< div class = "alert alert-warning alert-dismissible fade show" role = "alert" >
2017-08-25 03:11:36 +02:00
< strong > Holy guacamole!< / strong > You should check in on some of those fields below.
2015-03-31 05:50:34 +02:00
< button type = "button" class = "close" data-dismiss = "alert" aria-label = "Close" >
< span aria-hidden = "true" > × < / span >
< / button >
< / div >
{% endexample %}
2015-04-18 04:51:15 +02:00
## JavaScript behavior
2015-03-31 05:50:34 +02:00
2015-04-18 04:51:15 +02:00
### Triggers
2015-03-31 05:50:34 +02:00
Enable dismissal of an alert via JavaScript:
{% highlight js %}
$(".alert").alert()
{% endhighlight %}
2015-04-18 04:51:15 +02:00
Or with `data` attributes on a button **within the alert** , as demonstrated above:
2015-03-31 05:50:34 +02:00
{% highlight html %}
< button type = "button" class = "close" data-dismiss = "alert" aria-label = "Close" >
< span aria-hidden = "true" > × < / span >
< / button >
{% endhighlight %}
2015-04-18 04:51:15 +02:00
Note that closing an alert will remove it from the DOM.
2015-03-31 05:50:34 +02:00
### Methods
2015-08-11 01:36:44 +02:00
| Method | Description |
| --- | --- |
| `$().alert()` | 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.) |
2016-10-28 00:13:17 +02:00
| `$().alert('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. |
2015-03-31 05:50:34 +02:00
{% highlight js %}$(".alert").alert('close'){% endhighlight %}
### Events
Bootstrap's alert plugin exposes a few events for hooking into alert functionality.
2015-08-11 01:36:44 +02:00
| Event | Description |
| --- | --- |
| `close.bs.alert` | This event fires immediately when the < code > close</ code > instance method is called. |
| `closed.bs.alert` | This event is fired when the alert has been closed (will wait for CSS transitions to complete). |
2015-03-31 05:50:34 +02:00
{% highlight js %}
$('#myAlert').on('closed.bs.alert', function () {
// do something…
})
{% endhighlight %}