Bootstrap currently works around several outstanding browser bugs in major browsers to deliver the best cross-browser experience possible. Some bugs, like those listed below, cannot be solved by us.
Bootstrap currently works around several outstanding browser bugs in major browsers to deliver the best cross-browser experience possible. Some bugs, like those listed below, cannot be solved by us.
We publicly list browser bugs that are impacting us here, in the hopes of expediting the process of fixing them. For information on Bootstrap's browser compatibility, [see our browser compatibility docs](../getting-started/#support).
We publicly list browser bugs that are impacting us here, in the hopes of expediting the process of fixing them. For information on Bootstrap's browser compatibility, [see our browser compatibility docs]({{ site.baseurl }}/getting-started/browsers-devices/#supported-browsers).
Also see [jQuery's browser bug workarounds](https://docs.google.com/document/d/1LPaPA30bLUB_publLIMF0RlhdnPx_ePXm7oW02iiT6o).
Also see [jQuery's browser bug workarounds](https://docs.google.com/document/d/1LPaPA30bLUB_publLIMF0RlhdnPx_ePXm7oW02iiT6o).
Group a series of buttons together on a single line with the button group. Add on optional JavaScript radio and checkbox style behavior with [our buttons plugin](../javascript/#buttons).
Group a series of buttons together on a single line with the button group. Add on optional JavaScript radio and checkbox style behavior with [our buttons plugin]({{ site.baseurl }}/components/buttons/#button-plugin).
@@ -293,7 +293,7 @@ Cards include their own variant classes for quickly changing the `background-col
...
@@ -293,7 +293,7 @@ Cards include their own variant classes for quickly changing the `background-col
## Groups
## Groups
Use card groups to render cards as a single, attached element with equal width and height columns. By default, card groups use `display: table;` and `table-layout: fixed;` to achieve their uniform sizing. However, enabling [flexbox mode](/getting-started/flexbox) can switch that to use `display: flex;` and provide the same effect.
Use card groups to render cards as a single, attached element with equal width and height columns. By default, card groups use `display: table;` and `table-layout: fixed;` to achieve their uniform sizing. However, enabling [flexbox mode]({{ site.baseurl }}/getting-started/flexbox) can switch that to use `display: flex;` and provide the same effect.
{% example html %}
{% example html %}
<divclass="card-group">
<divclass="card-group">
...
@@ -328,7 +328,7 @@ Use card groups to render cards as a single, attached element with equal width a
...
@@ -328,7 +328,7 @@ Use card groups to render cards as a single, attached element with equal width a
Need a set of equal width and height cards that aren't attached to one another? Use card decks. By default, card decks require two wrapping elements: `.card-deck-wrapper` and a `.card-deck`. We use table styles for the sizing and the gutters on `.card-deck`. The `.card-deck-wrapper` is used to negative margin out the `border-spacing` on the `.card-deck`.
Need a set of equal width and height cards that aren't attached to one another? Use card decks. By default, card decks require two wrapping elements: `.card-deck-wrapper` and a `.card-deck`. We use table styles for the sizing and the gutters on `.card-deck`. The `.card-deck-wrapper` is used to negative margin out the `border-spacing` on the `.card-deck`.
**ProTip!** If you enable [flexbox mode](/layout/flexbox), you can remove the `.card-deck-wrapper`.
**ProTip!** If you enable [flexbox mode]({{ site.baseurl }}/getting-started/flexbox/), you can remove the `.card-deck-wrapper`.
@@ -13,7 +13,7 @@ Bootstrap provides several form control styles, layout options, and custom compo
...
@@ -13,7 +13,7 @@ Bootstrap provides several form control styles, layout options, and custom compo
## Form controls
## Form controls
Bootstrap's form controls expand on [our Rebooted form styles](/components/reboot/#forms) with classes. Use these classes to opt into their customized displays for a more consistent rendering across browsers and devices. The example form below demonstrates common HTML form elements that receive updated styles from Bootstrap with additional classes.
Bootstrap's form controls expand on [our Rebooted form styles]({{ site.baseurl }}/components/reboot/#forms) with classes. Use these classes to opt into their customized displays for a more consistent rendering across browsers and devices. The example form below demonstrates common HTML form elements that receive updated styles from Bootstrap with additional classes.
Remember, since Bootstrap utilizes the HTML5 doctype, **all inputs must have a `type` attribute**.
Remember, since Bootstrap utilizes the HTML5 doctype, **all inputs must have a `type` attribute**.
@@ -34,7 +34,7 @@ Always try to place a modal's HTML code in a top-level position in your document
...
@@ -34,7 +34,7 @@ Always try to place a modal's HTML code in a top-level position in your document
{% callout warning %}
{% callout warning %}
#### Mobile device caveats
#### Mobile device caveats
There are some caveats regarding using modals on mobile devices. [See our browser support docs](../getting-started/#support-fixed-position-keyboards) for details.
There are some caveats regarding using modals on mobile devices. [See our browser support docs]({{ site.baseurl }}/getting-started/browsers-devices/#modals-navbars-and-virtual-keyboards) for details.
@@ -49,7 +49,7 @@ Classes are used throughout, so your markup can be super flexible. Use `<ul>`s l
...
@@ -49,7 +49,7 @@ Classes are used throughout, so your markup can be super flexible. Use `<ul>`s l
## Tabs
## Tabs
Takes the basic nav from above and adds the `.nav-tabs` class to generate a tabbed interface. Use them to create tabbable regions with our [tab JavaScript plugin](../javascript/tabs).
Takes the basic nav from above and adds the `.nav-tabs` class to generate a tabbed interface. Use them to create tabbable regions with our [tab JavaScript plugin](#javascript-behavior).
{% example html %}
{% example html %}
<ulclass="nav nav-tabs">
<ulclass="nav nav-tabs">
...
@@ -112,7 +112,7 @@ Just add `.nav-stacked` to the `.nav.nav-pills`.
...
@@ -112,7 +112,7 @@ Just add `.nav-stacked` to the `.nav.nav-pills`.
## Using dropdowns
## Using dropdowns
Add dropdown menus with a little extra HTML and the [dropdowns JavaScript plugin]({{ site.baseurl }}javascript/#dropdowns).
Add dropdown menus with a little extra HTML and the [dropdowns JavaScript plugin]({{ site.baseurl }}/components/dropdowns/#usage).
@@ -16,8 +16,8 @@ Add small overlay content, like those found in iOS, to any element for housing s
...
@@ -16,8 +16,8 @@ Add small overlay content, like those found in iOS, to any element for housing s
Things to know when using the popover plugin:
Things to know when using the popover plugin:
- Popovers rely on on the 3rd party library [tether](http://github.hubspot.com/tether/) for positioning. You must include [tether.min.js](https://github.com/HubSpot/tether/blob/master/dist/js/tether.min.js) before bootstrap.js in order for popovers to work!
- Popovers rely on the 3rd party library [tether](http://github.hubspot.com/tether/) for positioning. You must include [tether.min.js](https://github.com/HubSpot/tether/blob/master/dist/js/tether.min.js) before bootstrap.js in order for popovers to work!
- Popovers require the [tooltip plugin](/components/tooltips) as a dependency.
- Popovers require the [tooltip plugin]({{ site.baseurl }}/components/tooltips) as a dependency.
- Popovers are opt-in for performance reasons, so **you must initialize them yourself**.
- Popovers are opt-in for performance reasons, so **you must initialize them yourself**.
- Zero-length `title` and `content` values will never show a popover.
- Zero-length `title` and `content` values will never show a popover.
- Specify `container: 'body'` to avoid rendering problems in more complex components (like our input groups, button groups, etc).
- Specify `container: 'body'` to avoid rendering problems in more complex components (like our input groups, button groups, etc).
@@ -263,7 +263,11 @@ The `.invisible` class can be used to toggle only the visibility of an element,
...
@@ -263,7 +263,11 @@ The `.invisible` class can be used to toggle only the visibility of an element,
## Screen readers
## Screen readers
Hide an element to all devices **except screen readers** with `.sr-only`. Combine `.sr-only` with `.sr-only-focusable` to show the element again when it's focused (e.g. by a keyboard-only user). Necessary for following [accessibility best practices](../getting-started/#accessibility). Can also be used as mixins.
Hide an element to all devices **except screen readers** with `.sr-only`. Combine `.sr-only` with `.sr-only-focusable` to show the element again when it's focused (e.g. by a keyboard-only user). Can also be used as mixins.
{% comment %}
Necessary for following [accessibility best practices](../getting-started/#accessibility).
{% endcomment %}
{% highlight html %}
{% highlight html %}
<aclass="sr-only sr-only-focusable"href="#content">Skip to main content</a>
<aclass="sr-only sr-only-focusable"href="#content">Skip to main content</a>
@@ -47,7 +47,7 @@ Add classes to an `<img>` element to easily style images in any project.
...
@@ -47,7 +47,7 @@ Add classes to an `<img>` element to easily style images in any project.
## Aligning images
## Aligning images
Align images with the [helper float classes](/components/utilities/#floats) or [text alignment classes](/components/utilities/#text-alignment). A simple centering class can also be used for `block` level images.
Align images with the [helper float classes]({{ site.baseurl }}/components/utilities/#floats) or [text alignment classes]({{ site.baseurl }}/components/utilities/#text-alignment). A simple centering class can also be used for `block` level images.
<divclass="bd-example bd-example-images">
<divclass="bd-example bd-example-images">
<imgdata-src="holder.js/200x200"class="img-rounded pull-left"alt="A generic square placeholder image with rounded corners">
<imgdata-src="holder.js/200x200"class="img-rounded pull-left"alt="A generic square placeholder image with rounded corners">
@@ -120,7 +120,7 @@ The `<pre>` element is reset to remove its `margin-top` and use `rem` units for
...
@@ -120,7 +120,7 @@ The `<pre>` element is reset to remove its `margin-top` and use `rem` units for
## Tables
## Tables
Tables are slightly adjusted to style `<caption>`s and ensure consistent `text-align` throughout. Additional changes for borders, padding, and more come with [the `.table` class](/content/tables/).
Tables are slightly adjusted to style `<caption>`s and ensure consistent `text-align` throughout. Additional changes for borders, padding, and more come with [the `.table` class]({{ site.baseurl }}/content/tables/).
Bootstrap includes simple and easily customized typography for headings, body text, lists, and more. For even more control, check out the [textual utility classes](/components/utilities/).
Bootstrap includes simple and easily customized typography for headings, body text, lists, and more. For even more control, check out the [textual utility classes]({{ site.baseurl }}/components/utilities/).
@@ -91,7 +91,7 @@ Similarly, the latest versions of most desktop browsers are supported.
...
@@ -91,7 +91,7 @@ Similarly, the latest versions of most desktop browsers are supported.
Unofficially, Bootstrap should look and behave well enough in Chromium and Chrome for Linux, Firefox for Linux, and Internet Explorer 8 and below, though they are not officially supported.
Unofficially, Bootstrap should look and behave well enough in Chromium and Chrome for Linux, Firefox for Linux, and Internet Explorer 8 and below, though they are not officially supported.
For a list of some of the browser bugs that Bootstrap has to grapple with, see our [Wall of browser bugs](../../browser-bugs/).
For a list of some of the browser bugs that Bootstrap has to grapple with, see our [Wall of browser bugs]({{ site.baseurl }}/browser-bugs/).
@@ -21,7 +21,7 @@ Download just the compiled and minified CSS and JavaScript. Doesn't include any
...
@@ -21,7 +21,7 @@ Download just the compiled and minified CSS and JavaScript. Doesn't include any
<divclass="col-sm-6">
<divclass="col-sm-6">
{% markdown %}
{% markdown %}
### Source files
### Source files
Download everything: source Sass, JavaScript, and documentation files. **Requires a Sass compiler, [Autoprefixer](https://github.com/postcss/autoprefixer), and [some setup](../compiling).**
Download everything: source Sass, JavaScript, and documentation files. **Requires a Sass compiler, [Autoprefixer](https://github.com/postcss/autoprefixer), and some setup.**
@@ -39,7 +39,7 @@ If you're familiar with modifying variables in Sass—or any other CSS preproces
...
@@ -39,7 +39,7 @@ If you're familiar with modifying variables in Sass—or any other CSS preproces
2. Change it from `false` to `true`.
2. Change it from `false` to `true`.
3. Recompile, and done!
3. Recompile, and done!
Alternatively, if you don't need the source Sass files, you may swap the default Bootstrap compiled CSS with the compiled flexbox variation. [Head to the download page](/getting-started/download) for more information.
Alternatively, if you don't need the source Sass files, you may swap the default Bootstrap compiled CSS with the compiled flexbox variation. [Head to the download page]({{ site.baseurl }}/getting-started/download) for more information.
@@ -65,7 +65,7 @@ Put it all together and your pages should look like this:
...
@@ -65,7 +65,7 @@ Put it all together and your pages should look like this:
</html>
</html>
{% endhighlight %}
{% endhighlight %}
That's all you need for overall page requirements. Visit the [Layout docs]({{ site.baseurl }}/layout/scaffolding) or [our official examples](../examples/) to start laying out your site's content and components.
That's all you need for overall page requirements. Visit the [Layout docs]({{ site.baseurl }}/layout/scaffolding) or [our official examples]({{ site.baseurl }}/examples/) to start laying out your site's content and components.
@@ -356,7 +356,7 @@ With the four tiers of grids available you're bound to run into issues where, at
...
@@ -356,7 +356,7 @@ With the four tiers of grids available you're bound to run into issues where, at
{% endexample %}
{% endexample %}
</div>
</div>
In addition to column clearing at responsive breakpoints, you may need to **reset offsets, pushes, or pulls**. See this in action in [the grid example](../examples/grid/).
In addition to column clearing at responsive breakpoints, you may need to **reset offsets, pushes, or pulls**. See this in action in [the grid example]({{ site.baseurl }}/examples/grid/).