-
-
-
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.
-
-
-
-
-
Ensure correct role
and provide a label
-
In order for assistive technologies – such as screen readers – to convey that a series of buttons is grouped, an appropriate role
attribute needs to be provided. For button groups, this would be role="group"
, while toolbars should have a role="toolbar"
.
-
One exception are groups which only contain a single control (for instance the justified button groups with <button>
elements) or a dropdown.
-
In addition, groups and toolbars should be given an explicit label, as most assistive technologies will otherwise not announce them, despite the presence of the correct role
attribute. In the examples provided here, we use aria-label
, but alternatives such as aria-labelledby
can also be used.
-
-
-
Basic example
-
Wrap a series of buttons with .btn
in .btn-group
.
-
-
-
-
-
-
-
-{% highlight html %}
-
-
-
-
-
-{% endhighlight %}
-
-
-
Combine sets of <div class="btn-group">
into a <div class="btn-toolbar">
for more complex components.
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
Sizing
-
Instead of applying button sizing classes to every button in a group, just add .btn-group-*
to each .btn-group
, including when nesting multiple groups.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-{% highlight html %}
-
...
-
...
-
...
-
...
-{% endhighlight %}
-
-
Nesting
-
Place a .btn-group
within another .btn-group
when you want dropdown menus mixed with a series of buttons.
-
-
-
-
-
-
-
-
-
-
-
-{% highlight html %}
-
-
-
-
-
-
-
-
-
-{% endhighlight %}
-
-
Vertical variation
-
Make a set of buttons appear vertically stacked rather than horizontally. Split button dropdowns are not supported here.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-{% highlight html %}
-
- ...
-
-{% endhighlight %}
-
-
Justified button groups
-
Make a group of buttons stretch at equal sizes to span the entire width of its parent. Also works with button dropdowns within the button group.
-
-
-
Handling borders
-
Due to the specific HTML and CSS used to justify buttons (namely display: table-cell
), the borders between them are doubled. In regular button groups, margin-left: -1px
is used to stack the borders instead of removing them. However, margin
doesn't work with display: table-cell
. As a result, depending on your customizations to Bootstrap, you may wish to remove or re-color the borders.
-
-
-
IE8 and borders
-
Internet Explorer 8 doesn't render borders on buttons in a justified button group, whether it's on <a>
or <button>
elements. To get around that, wrap each button in another .btn-group
.
-
See #12476 for more information.
-
-
-
With <a>
elements
-
Just wrap a series of .btn
s in .btn-group.btn-group-justified
.
-
-{% highlight html %}
-
- ...
-
-{% endhighlight %}
-
-
-
Links acting as buttons
-
If the <a>
elements are used to act as buttons – triggering in-page functionality, rather than navigating to another document or section within the current page – they should also be given an appropriate role="button"
.
-
-
-
With <button>
elements
-
To use justified button groups with <button>
elements, you must wrap each button in a button group. Most browsers don't properly apply our CSS for justification to <button>
elements, but since we support button dropdowns, we can work around that.
-
-
-
-
-
-
-
-
-
-
-
-
-
-{% highlight html %}
-
-
-
-
-
-
-
-
-
-
-
-{% endhighlight %}
-
diff --git a/vendor/bootstrap/docs/_includes/components/dropdowns.html b/vendor/bootstrap/docs/_includes/components/dropdowns.html
deleted file mode 100644
index 25dab56e2..000000000
--- a/vendor/bootstrap/docs/_includes/components/dropdowns.html
+++ /dev/null
@@ -1,156 +0,0 @@
-
-
-
-
Default navbar
-
Navbars are responsive meta components that serve as navigation headers for your application or site. They begin collapsed (and are toggleable) in mobile views and become horizontal as the available viewport width increases.
-
Justified navbar nav links are currently not supported.
-
-
-
Overflowing content
-
Since Bootstrap doesn't know how much space the content in your navbar needs, you might run into issues with content wrapping into a second row. To resolve this, you can:
-
- - Reduce the amount or width of navbar items.
- - Hide certain navbar items at certain screen sizes using responsive utility classes.
- - Change the point at which your navbar switches between collapsed and horizontal mode. Customize the
@grid-float-breakpoint
variable or add your own media query.
-
-
-
-
Requires JavaScript plugin
-
If JavaScript is disabled and the viewport is narrow enough that the navbar collapses, it will be impossible to expand the navbar and view the content within the .navbar-collapse
.
-
The responsive navbar requires the collapse plugin to be included in your version of Bootstrap.
-
-
-
Changing the collapsed mobile navbar breakpoint
-
The navbar collapses into its vertical mobile view when the viewport is narrower than @grid-float-breakpoint
, and expands into its horizontal non-mobile view when the viewport is at least @grid-float-breakpoint
in width. Adjust this variable in the Less source to control when the navbar collapses/expands. The default value is 768px
(the smallest "small" or "tablet" screen).
-
-
-
Make navbars accessible
-
Be sure to use a <nav>
element or, if using a more generic element such as a <div>
, add a role="navigation"
to every navbar to explicitly identify it as a landmark region for users of assistive technologies.
-
-
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
-
Brand image
-
Replace the navbar brand with your own image by swapping the text for an <img>
. Since the .navbar-brand
has its own padding and height, you may need to override some CSS depending on your image.
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
-
-
Place form content within .navbar-form
for proper vertical alignment and collapsed behavior in narrow viewports. Use the alignment options to decide where it resides within the navbar content.
-
As a heads up, .navbar-form
shares much of its code with .form-inline
via mixin. Some form controls, like input groups, may require fixed widths to be show up properly within a navbar.
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
-
Mobile device caveats
-
There are some caveats regarding using form controls within fixed elements on mobile devices. See our browser support docs for details.
-
-
-
-
-
-
-
Add the .navbar-btn
class to <button>
elements not residing in a <form>
to vertically center them in the navbar.
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
-
Context-specific usage
-
Like the standard button classes, .navbar-btn
can be used on <a>
and <input>
elements. However, neither .navbar-btn
nor the standard button classes should be used on <a>
elements within .navbar-nav
.
-
-
-
Text
-
Wrap strings of text in an element with .navbar-text
, usually on a <p>
tag for proper leading and color.
-
-
-
-{% highlight html %}
-
Signed in as Mark Otto
-{% endhighlight %}
-
-
-
Non-nav links
-
For folks using standard links that are not within the regular navbar navigation component, use the .navbar-link
class to add the proper colors for the default and inverse navbar options.
-
-{% highlight html %}
-
Signed in as Mark Otto
-{% endhighlight %}
-
-
-
Component alignment
-
Align nav links, forms, buttons, or text, using the .navbar-left
or .navbar-right
utility classes. Both classes will add a CSS float in the specified direction. For example, to align nav links, put them in a separate <ul>
with the respective utility class applied.
-
These classes are mixin-ed versions of .pull-left
and .pull-right
, but they're scoped to media queries for easier handling of navbar components across device sizes.
-
-
Right aligning multiple components
-
Navbars currently have a limitation with multiple .navbar-right
classes. To properly space content, we use negative margin on the last .navbar-right
element. When there are multiple elements using that class, these margins don't work as intended.
-
We'll revisit this when we can rewrite that component in v4.
-
-
-
-
Fixed to top
-
Add .navbar-fixed-top
and include a .container
or .container-fluid
to center and pad navbar content.
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
-
Body padding required
-
The fixed navbar will overlay your other content, unless you add padding
to the top of the <body>
. Try out your own values or use our snippet below. Tip: By default, the navbar is 50px high.
-{% highlight scss %}
-body { padding-top: 70px; }
-{% endhighlight %}
-
Make sure to include this after the core Bootstrap CSS.
-
-
-
-
Fixed to bottom
-
Add .navbar-fixed-bottom
and include a .container
or .container-fluid
to center and pad navbar content.
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
-
Body padding required
-
The fixed navbar will overlay your other content, unless you add padding
to the bottom of the <body>
. Try out your own values or use our snippet below. Tip: By default, the navbar is 50px high.
-{% highlight scss %}
-body { padding-bottom: 70px; }
-{% endhighlight %}
-
Make sure to include this after the core Bootstrap CSS.
-
-
-
-
Static top
-
Create a full-width navbar that scrolls away with the page by adding .navbar-static-top
and include a .container
or .container-fluid
to center and pad navbar content.
-
Unlike the .navbar-fixed-*
classes, you do not need to change any padding on the body
.
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
-
Inverted navbar
-
Modify the look of the navbar by adding .navbar-inverse
.
-
-{% highlight html %}
-
-{% endhighlight %}
-
diff --git a/vendor/bootstrap/docs/_includes/components/navs.html b/vendor/bootstrap/docs/_includes/components/navs.html
deleted file mode 100644
index 7e7f357ea..000000000
--- a/vendor/bootstrap/docs/_includes/components/navs.html
+++ /dev/null
@@ -1,189 +0,0 @@
-
-
-
-
-
Use the button classes on an <a>
, <button>
, or <input>
element.
-
-{% highlight html %}
-
Link
-
-
-
-{% endhighlight %}
-
-
-
Context-specific usage
-
While button classes can be used on <a>
and <button>
elements, only <button>
elements are supported within our nav and navbar components.
-
-
-
-
-
-
-
-
Use any of the available button classes to quickly create a styled button.
-
-
-
-
-
-
-
-
-
-{% highlight html %}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-{% endhighlight %}
-
-
-
-
-
Fancy larger or smaller buttons? Add .btn-lg
, .btn-sm
, or .btn-xs
for additional sizes.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-{% highlight html %}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-{% endhighlight %}
-
-
Create block level buttons—those that span the full width of a parent— by adding .btn-block
.
-
-
-
-
-
-
-{% highlight html %}
-
-
-{% endhighlight %}
-
-
-
-
Buttons will appear pressed (with a darker background, darker border, and inset shadow) when active. For <button>
elements, this is done via :active
. For <a>
elements, it's done with .active
. However, you may use .active
on <button>
s (and include the aria-pressed="true"
attribute) should you need to replicate the active state programmatically.
-
-
Button element
-
No need to add :active
as it's a pseudo-class, but if you need to force the same appearance, go ahead and add .active
.
-
-
-
-
-{% highlight html %}
-
-
-{% endhighlight %}
-
-
Anchor element
-
Add the .active
class to <a>
buttons.
-
- Primary link
- Link
-
-{% highlight html %}
-
Primary link
-
Link
-{% endhighlight %}
-
-
-
-
Make buttons look unclickable by fading them back with opacity
.
-
-
Button element
-
Add the disabled
attribute to <button>
buttons.
-
-
-
-
-{% highlight html %}
-
-
-{% endhighlight %}
-
-
-
-
Anchor element
-
Add the .disabled
class to <a>
buttons.
-
- Primary link
- Link
-
-{% highlight html %}
-
Primary link
-
Link
-{% endhighlight %}
-
- We use .disabled
as a utility class here, similar to the common .active
class, so no prefix is required.
-
-
-
-
diff --git a/vendor/bootstrap/docs/_includes/css/code.html b/vendor/bootstrap/docs/_includes/css/code.html
deleted file mode 100644
index 02acb1238..000000000
--- a/vendor/bootstrap/docs/_includes/css/code.html
+++ /dev/null
@@ -1,52 +0,0 @@
-
-
-
-
-
Individual form controls automatically receive some global styling. All textual <input>
, <textarea>
, and <select>
elements with .form-control
are set to width: 100%;
by default. Wrap labels and controls in .form-group
for optimum spacing.
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
-
-
-
Add .form-inline
to your form (which doesn't have to be a <form>
) for left-aligned and inline-block controls. This only applies to forms within viewports that are at least 768px wide.
-
-
-
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
-
Use Bootstrap's predefined grid classes to align labels and groups of form controls in a horizontal layout by adding .form-horizontal
to the form (which doesn't have to be a <form>
). Doing so changes .form-group
s to behave as grid rows, so no need for .row
.
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
-
-
Examples of standard form controls supported in an example form layout.
-
-
Inputs
-
Most common form control, text-based input fields. Includes support for all HTML5 types: text
, password
, datetime
, datetime-local
, date
, month
, time
, week
, number
, email
, url
, search
, tel
, and color
.
-
-
-
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
-
Textarea
-
Form control which supports multiple lines of text. Change rows
attribute as necessary.
-
-
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
Checkboxes and radios
-
Checkboxes are for selecting one or several options in a list, while radios are for selecting one option from many.
-
Disabled checkboxes and radios are supported, but to provide a "not-allowed" cursor on hover of the parent <label>
, you'll need to add the .disabled
class to the parent .radio
, .radio-inline
, .checkbox
, or .checkbox-inline
.
-
Default (stacked)
-
-{% highlight html %}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-{% endhighlight %}
-
-
Inline checkboxes and radios
-
Use the .checkbox-inline
or .radio-inline
classes on a series of checkboxes or radios for controls that appear on the same line.
-
-
-
-
-
-{% highlight html %}
-
-
-
-
-
-
-
-{% endhighlight %}
-
-
Checkboxes and radios without label text
-
Should you have no text within the <label>
, the input is positioned as you'd expect. Currently only works on non-inline checkboxes and radios. Remember to still provide some form of label for assistive technologies (for instance, using aria-label
).
-
-{% highlight html %}
-
-
-
-
-
-
-{% endhighlight %}
-
-
Selects
-
Note that many native select menus—namely in Safari and Chrome—have rounded corners that cannot be modified via border-radius
properties.
-
-
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
For <select>
controls with the multiple
attribute, multiple options are shown by default.
-
-
-
-
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
-
-
When you need to place plain text next to a form label within a form, use the .form-control-static
class on a <p>
.
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
-
We remove the default outline
styles on some form controls and apply a box-shadow
in its place for :focus
.
-
-
-
-
-
Demo :focus
state
-
The above example input uses custom styles in our documentation to demonstrate the :focus
state on a .form-control
.
-
-
-
-
-
Add the disabled
boolean attribute on an input to prevent user interactions. Disabled inputs appear lighter and add a not-allowed
cursor.
-
-
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
-
Add the disabled
attribute to a <fieldset>
to disable all the controls within the <fieldset>
at once.
-
-
-
Caveat about link functionality of <a>
-
By default, browsers will treat all native form controls (<input>
, <select>
and <button>
elements) inside a <fieldset disabled>
as disabled, preventing both keyboard and mouse interactions on them. However, if your form also includes <a ... class="btn btn-*">
elements, these will only be given a style of pointer-events: none
. As noted in the section about disabled state for buttons (and specifically in the sub-section for anchor elements), this CSS property is not yet standardized and isn't fully supported in Opera 18 and below, or in Internet Explorer 11, and won't prevent keyboard users from being able to focus or activate these links. So to be safe, use custom JavaScript to disable such links.
-
-
-
-
Cross-browser compatibility
-
While Bootstrap will apply these styles in all browsers, Internet Explorer 11 and below don't fully support the disabled
attribute on a <fieldset>
. Use custom JavaScript to disable the fieldset in these browsers.
-
-
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
-
-
Add the readonly
boolean attribute on an input to prevent modification of the input's value. Read-only inputs appear lighter (just like disabled inputs), but retain the standard cursor.
-
-
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
-
Help text
-
Block level help text for form controls.
-
-
Associating help text with form controls
-
Help text should be explicitly associated with the form control it relates to using the aria-describedby
attribute. This will ensure that assistive technologies – such as screen readers – will announce this help text when the user focuses or enters the control.
-
-
-
-
-{% highlight html %}
-
-
-...
-
A block of help text that breaks onto a new line and may extend beyond one line.
-{% endhighlight %}
-
-
-
- Bootstrap includes validation styles for error, warning, and success states on form controls. To use, add .has-warning
, .has-error
, or .has-success
to the parent element. Any .control-label
, .form-control
, and .help-block
within that element will receive the validation styles.
-
- Create taller or shorter form controls that match button sizes.
- Wrap inputs in grid columns, or any custom parent element, to easily enforce desired widths.
-
-
-
-
Bootstrap includes a responsive, mobile first fluid grid system that appropriately scales up to 12 columns as the device or viewport size increases. It includes predefined classes for easy layout options, as well as powerful mixins for generating more semantic layouts.
-
-
Introduction
-
Grid systems are used for creating page layouts through a series of rows and columns that house your content. Here's how the Bootstrap grid system works:
-
- - Rows must be placed within a
.container
(fixed-width) or .container-fluid
(full-width) for proper alignment and padding.
- - Use rows to create horizontal groups of columns.
- - Content should be placed within columns, and only columns may be immediate children of rows.
- - Predefined grid classes like
.row
and .col-xs-4
are available for quickly making grid layouts. Less mixins can also be used for more semantic layouts.
- - Columns create gutters (gaps between column content) via
padding
. That padding is offset in rows for the first and last column via negative margin on .row
s.
- - The negative margin is why the examples below are outdented. It's so that content within grid columns is lined up with non-grid content.
- - Grid columns are created by specifying the number of twelve available columns you wish to span. For example, three equal columns would use three
.col-xs-4
.
- - If more than 12 columns are placed within a single row, each group of extra columns will, as one unit, wrap onto a new line.
- - Grid classes apply to devices with screen widths greater than or equal to the breakpoint sizes, and override grid classes targeted at smaller devices. Therefore, e.g. applying any
.col-md-*
class to an element will not only affect its styling on medium devices but also on large devices if a .col-lg-*
class is not present.
-
-
Look to the examples for applying these principles to your code.
-
-
-
We use the following media queries in our Less files to create the key breakpoints in our grid system.
-{% highlight scss %}
-/* Extra small devices (phones, less than 768px) */
-/* No media query since this is the default in Bootstrap */
-
-/* Small devices (tablets, 768px and up) */
-@media (min-width: @screen-sm-min) { ... }
-
-/* Medium devices (desktops, 992px and up) */
-@media (min-width: @screen-md-min) { ... }
-
-/* Large devices (large desktops, 1200px and up) */
-@media (min-width: @screen-lg-min) { ... }
-{% endhighlight %}
-
We occasionally expand on these media queries to include a max-width
to limit CSS to a narrower set of devices.
-{% highlight scss %}
-@media (max-width: @screen-xs-max) { ... }
-@media (min-width: @screen-sm-min) and (max-width: @screen-sm-max) { ... }
-@media (min-width: @screen-md-min) and (max-width: @screen-md-max) { ... }
-@media (min-width: @screen-lg-min) { ... }
-{% endhighlight %}
-
-
Grid options
-
See how aspects of the Bootstrap grid system work across multiple devices with a handy table.
-
-
-
-
- |
-
- Extra small devices
- Phones (<768px)
- |
-
- Small devices
- Tablets (≥768px)
- |
-
- Medium devices
- Desktops (≥992px)
- |
-
- Large devices
- Desktops (≥1200px)
- |
-
-
-
-
- Grid behavior |
- Horizontal at all times |
- Collapsed to start, horizontal above breakpoints |
-
-
- Container width |
- None (auto) |
- 750px |
- 970px |
- 1170px |
-
-
- Class prefix |
- .col-xs- |
- .col-sm- |
- .col-md- |
- .col-lg- |
-
-
- # of columns |
- 12 |
-
-
- Column width |
- Auto |
- ~62px |
- ~81px |
- ~97px |
-
-
- Gutter width |
- 30px (15px on each side of a column) |
-
-
- Nestable |
- Yes |
-
-
- Offsets |
- Yes |
-
-
- Column ordering |
- Yes |
-
-
-
-
-
-
Example: Stacked-to-horizontal
-
Using a single set of .col-md-*
grid classes, you can create a basic grid system that starts out stacked on mobile devices and tablet devices (the extra small to small range) before becoming horizontal on desktop (medium) devices. Place grid columns in any .row
.
-
-
.col-md-1
-
.col-md-1
-
.col-md-1
-
.col-md-1
-
.col-md-1
-
.col-md-1
-
.col-md-1
-
.col-md-1
-
.col-md-1
-
.col-md-1
-
.col-md-1
-
.col-md-1
-
-
-
.col-md-8
-
.col-md-4
-
-
-
.col-md-4
-
.col-md-4
-
.col-md-4
-
-
-
.col-md-6
-
.col-md-6
-
-{% highlight html %}
-
-
.col-md-1
-
.col-md-1
-
.col-md-1
-
.col-md-1
-
.col-md-1
-
.col-md-1
-
.col-md-1
-
.col-md-1
-
.col-md-1
-
.col-md-1
-
.col-md-1
-
.col-md-1
-
-
-
.col-md-8
-
.col-md-4
-
-
-
.col-md-4
-
.col-md-4
-
.col-md-4
-
-
-
.col-md-6
-
.col-md-6
-
-{% endhighlight %}
-
-
Example: Fluid container
-
Turn any fixed-width grid layout into a full-width layout by changing your outermost .container
to .container-fluid
.
-{% highlight html %}
-
-{% endhighlight %}
-
-
Example: Mobile and desktop
-
Don't want your columns to simply stack in smaller devices? Use the extra small and medium device grid classes by adding .col-xs-*
.col-md-*
to your columns. See the example below for a better idea of how it all works.
-
-
.col-xs-12 .col-md-8
-
.col-xs-6 .col-md-4
-
-
-
.col-xs-6 .col-md-4
-
.col-xs-6 .col-md-4
-
.col-xs-6 .col-md-4
-
-
-
.col-xs-6
-
.col-xs-6
-
-{% highlight html %}
-
-
-
.col-xs-12 .col-md-8
-
.col-xs-6 .col-md-4
-
-
-
-
-
.col-xs-6 .col-md-4
-
.col-xs-6 .col-md-4
-
.col-xs-6 .col-md-4
-
-
-
-
-
.col-xs-6
-
.col-xs-6
-
-{% endhighlight %}
-
-
Example: Mobile, tablet, desktop
-
Build on the previous example by creating even more dynamic and powerful layouts with tablet .col-sm-*
classes.
-
-
.col-xs-12 .col-sm-6 .col-md-8
-
.col-xs-6 .col-md-4
-
-
-
.col-xs-6 .col-sm-4
-
.col-xs-6 .col-sm-4
-
-
-
.col-xs-6 .col-sm-4
-
-{% highlight html %}
-
-
.col-xs-12 .col-sm-6 .col-md-8
-
.col-xs-6 .col-md-4
-
-
-
.col-xs-6 .col-sm-4
-
.col-xs-6 .col-sm-4
-
-
-
.col-xs-6 .col-sm-4
-
-{% endhighlight %}
-
-
Example: Column wrapping
-
If more than 12 columns are placed within a single row, each group of extra columns will, as one unit, wrap onto a new line.
-
-
.col-xs-9
-
.col-xs-4
Since 9 + 4 = 13 > 12, this 4-column-wide div gets wrapped onto a new line as one contiguous unit.
-
.col-xs-6
Subsequent columns continue along the new line.
-
-{% highlight html %}
-
-
.col-xs-9
-
.col-xs-4
Since 9 + 4 = 13 > 12, this 4-column-wide div gets wrapped onto a new line as one contiguous unit.
-
.col-xs-6
Subsequent columns continue along the new line.
-
-{% endhighlight %}
-
-
Responsive column resets
-
With the four tiers of grids available you're bound to run into issues where, at certain breakpoints, your columns don't clear quite right as one is taller than the other. To fix that, use a combination of a .clearfix
and our responsive utility classes.
-
-
- .col-xs-6 .col-sm-3
-
- Resize your viewport or check it out on your phone for an example.
-
-
.col-xs-6 .col-sm-3
-
-
-
-
-
.col-xs-6 .col-sm-3
-
.col-xs-6 .col-sm-3
-
-{% highlight html %}
-
-
.col-xs-6 .col-sm-3
-
.col-xs-6 .col-sm-3
-
-
-
-
-
.col-xs-6 .col-sm-3
-
.col-xs-6 .col-sm-3
-
-{% endhighlight %}
-
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.
-{% highlight html %}
-
-
.col-sm-5 .col-md-6
-
.col-sm-5 .col-sm-offset-2 .col-md-6 .col-md-offset-0
-
-
-
-
.col-sm-6 .col-md-5 .col-lg-6
-
.col-sm-6 .col-md-5 .col-md-offset-2 .col-lg-6 .col-lg-offset-0
-
-{% endhighlight %}
-
-
-
Offsetting columns
-
Move columns to the right using .col-md-offset-*
classes. These classes increase the left margin of a column by *
columns. For example, .col-md-offset-4
moves .col-md-4
over four columns.
-
-
.col-md-4
-
.col-md-4 .col-md-offset-4
-
-
-
.col-md-3 .col-md-offset-3
-
.col-md-3 .col-md-offset-3
-
-
-
.col-md-6 .col-md-offset-3
-
-{% highlight html %}
-
-
.col-md-4
-
.col-md-4 .col-md-offset-4
-
-
-
.col-md-3 .col-md-offset-3
-
.col-md-3 .col-md-offset-3
-
-
-
.col-md-6 .col-md-offset-3
-
-{% endhighlight %}
-
-
You can also override offsets from lower grid tiers with .col-*-offset-0
classes.
-{% highlight html %}
-
-{% endhighlight %}
-
-
Nesting columns
-
To nest your content with the default grid, add a new .row
and set of .col-sm-*
columns within an existing .col-sm-*
column. Nested rows should include a set of columns that add up to 12 or fewer (it is not required that you use all 12 available columns).
-
-
- Level 1: .col-sm-9
-
-
- Level 2: .col-xs-8 .col-sm-6
-
-
- Level 2: .col-xs-4 .col-sm-6
-
-
-
-
-{% highlight html %}
-
-
- Level 1: .col-sm-9
-
-
- Level 2: .col-xs-8 .col-sm-6
-
-
- Level 2: .col-xs-4 .col-sm-6
-
-
-
-
-{% endhighlight %}
-
-
Column ordering
-
Easily change the order of our built-in grid columns with .col-md-push-*
and .col-md-pull-*
modifier classes.
-
-
.col-md-9 .col-md-push-3
-
.col-md-3 .col-md-pull-9
-
-
-{% highlight html %}
-
-
.col-md-9 .col-md-push-3
-
.col-md-3 .col-md-pull-9
-
-{% endhighlight %}
-
-
Less mixins and variables
-
In addition to prebuilt grid classes for fast layouts, Bootstrap includes Less variables and mixins for quickly generating your own simple, semantic layouts.
-
-
Variables
-
Variables determine the number of columns, the gutter width, and the media query point at which to begin floating columns. We use these to generate the predefined grid classes documented above, as well as for the custom mixins listed below.
-{% highlight scss %}
-@grid-columns: 12;
-@grid-gutter-width: 30px;
-@grid-float-breakpoint: 768px;
-{% endhighlight %}
-
-
Mixins
-
Mixins are used in conjunction with the grid variables to generate semantic CSS for individual grid columns.
-{% highlight scss %}
-// Creates a wrapper for a series of columns
-.make-row(@gutter: @grid-gutter-width) {
- // Then clear the floated columns
- .clearfix();
-
- @media (min-width: @screen-sm-min) {
- margin-left: (@gutter / -2);
- margin-right: (@gutter / -2);
- }
-
- // Negative margin nested rows out to align the content of columns
- .row {
- margin-left: (@gutter / -2);
- margin-right: (@gutter / -2);
- }
-}
-
-// Generate the extra small columns
-.make-xs-column(@columns; @gutter: @grid-gutter-width) {
- position: relative;
- // Prevent columns from collapsing when empty
- min-height: 1px;
- // Inner gutter via padding
- padding-left: (@gutter / 2);
- padding-right: (@gutter / 2);
-
- // Calculate width based on number of columns available
- @media (min-width: @grid-float-breakpoint) {
- float: left;
- width: percentage((@columns / @grid-columns));
- }
-}
-
-// Generate the small columns
-.make-sm-column(@columns; @gutter: @grid-gutter-width) {
- position: relative;
- // Prevent columns from collapsing when empty
- min-height: 1px;
- // Inner gutter via padding
- padding-left: (@gutter / 2);
- padding-right: (@gutter / 2);
-
- // Calculate width based on number of columns available
- @media (min-width: @screen-sm-min) {
- float: left;
- width: percentage((@columns / @grid-columns));
- }
-}
-
-// Generate the small column offsets
-.make-sm-column-offset(@columns) {
- @media (min-width: @screen-sm-min) {
- margin-left: percentage((@columns / @grid-columns));
- }
-}
-.make-sm-column-push(@columns) {
- @media (min-width: @screen-sm-min) {
- left: percentage((@columns / @grid-columns));
- }
-}
-.make-sm-column-pull(@columns) {
- @media (min-width: @screen-sm-min) {
- right: percentage((@columns / @grid-columns));
- }
-}
-
-// Generate the medium columns
-.make-md-column(@columns; @gutter: @grid-gutter-width) {
- position: relative;
- // Prevent columns from collapsing when empty
- min-height: 1px;
- // Inner gutter via padding
- padding-left: (@gutter / 2);
- padding-right: (@gutter / 2);
-
- // Calculate width based on number of columns available
- @media (min-width: @screen-md-min) {
- float: left;
- width: percentage((@columns / @grid-columns));
- }
-}
-
-// Generate the medium column offsets
-.make-md-column-offset(@columns) {
- @media (min-width: @screen-md-min) {
- margin-left: percentage((@columns / @grid-columns));
- }
-}
-.make-md-column-push(@columns) {
- @media (min-width: @screen-md-min) {
- left: percentage((@columns / @grid-columns));
- }
-}
-.make-md-column-pull(@columns) {
- @media (min-width: @screen-md-min) {
- right: percentage((@columns / @grid-columns));
- }
-}
-
-// Generate the large columns
-.make-lg-column(@columns; @gutter: @grid-gutter-width) {
- position: relative;
- // Prevent columns from collapsing when empty
- min-height: 1px;
- // Inner gutter via padding
- padding-left: (@gutter / 2);
- padding-right: (@gutter / 2);
-
- // Calculate width based on number of columns available
- @media (min-width: @screen-lg-min) {
- float: left;
- width: percentage((@columns / @grid-columns));
- }
-}
-
-// Generate the large column offsets
-.make-lg-column-offset(@columns) {
- @media (min-width: @screen-lg-min) {
- margin-left: percentage((@columns / @grid-columns));
- }
-}
-.make-lg-column-push(@columns) {
- @media (min-width: @screen-lg-min) {
- left: percentage((@columns / @grid-columns));
- }
-}
-.make-lg-column-pull(@columns) {
- @media (min-width: @screen-lg-min) {
- right: percentage((@columns / @grid-columns));
- }
-}
-{% endhighlight %}
-
-
Example usage
-
You can modify the variables to your own custom values, or just use the mixins with their default values. Here's an example of using the default settings to create a two-column layout with a gap between.
-{% highlight scss %}
-.wrapper {
- .make-row();
-}
-.content-main {
- .make-lg-column(8);
-}
-.content-secondary {
- .make-lg-column(3);
- .make-lg-column-offset(1);
-}
-{% endhighlight %}
-{% highlight html %}
-
-{% endhighlight %}
-
diff --git a/vendor/bootstrap/docs/_includes/css/helpers.html b/vendor/bootstrap/docs/_includes/css/helpers.html
deleted file mode 100644
index 2da68dffa..000000000
--- a/vendor/bootstrap/docs/_includes/css/helpers.html
+++ /dev/null
@@ -1,207 +0,0 @@
-
-
-
-
Contextual colors
-
Convey meaning through color with a handful of emphasis utility classes. These may also be applied to links and will darken on hover just like our default link styles.
-
-
Fusce dapibus, tellus ac cursus commodo, tortor mauris nibh.
-
Nullam id dolor id nibh ultricies vehicula ut id elit.
-
Duis mollis, est non commodo luctus, nisi erat porttitor ligula.
-
Maecenas sed diam eget risus varius blandit sit amet non magna.
-
Etiam porta sem malesuada magna mollis euismod.
-
Donec ullamcorper nulla non metus auctor fringilla.
-
-{% highlight html %}
-
...
-
...
-
...
-
...
-
...
-
...
-{% endhighlight %}
-
-
Dealing with specificity
-
Sometimes emphasis classes cannot be applied due to the specificity of another selector. In most cases, a sufficient workaround is to wrap your text in a <span>
with the class.
-
-
-
Conveying meaning to assistive technologies
-
Using color to add meaning only provides a visual indication, which will not be conveyed to users of assistive technologies – such as screen readers. Ensure that information denoted by the color is either obvious from the content itself (the contextual colors are only used to reinforce meaning that is already present in the text/markup), or is included through alternative means, such as additional text hidden with the .sr-only
class.
-
-
-
Contextual backgrounds
-
Similar to the contextual text color classes, easily set the background of an element to any contextual class. Anchor components will darken on hover, just like the text classes.
-
-
Nullam id dolor id nibh ultricies vehicula ut id elit.
-
Duis mollis, est non commodo luctus, nisi erat porttitor ligula.
-
Maecenas sed diam eget risus varius blandit sit amet non magna.
-
Etiam porta sem malesuada magna mollis euismod.
-
Donec ullamcorper nulla non metus auctor fringilla.
-
-{% highlight html %}
-
...
-
...
-
...
-
...
-
...
-{% endhighlight %}
-
-
Dealing with specificity
-
Sometimes contextual background classes cannot be applied due to the specificity of another selector. In some cases, a sufficient workaround is to wrap your element's content in a <div>
with the class.
-
-
-
Conveying meaning to assistive technologies
-
As with contextual colors, ensure that any meaning conveyed through color is also conveyed in a format that is not purely presentational.
-
-
-
Close icon
-
Use the generic close icon for dismissing content like modals and alerts.
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
-
Carets
-
Use carets to indicate dropdown functionality and direction. Note that the default caret will reverse automatically in dropup menus.
-
-
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
-
Quick floats
-
Float an element to the left or right with a class. !important
is included to avoid specificity issues. Classes can also be used as mixins.
-{% highlight html %}
-
...
-
...
-{% endhighlight %}
-{% highlight scss %}
-// Classes
-.pull-left {
- float: left !important;
-}
-.pull-right {
- float: right !important;
-}
-
-// Usage as mixins
-.element {
- .pull-left();
-}
-.another-element {
- .pull-right();
-}
-{% endhighlight %}
-
-
-
Not for use in navbars
-
To align components in navbars with utility classes, use .navbar-left
or .navbar-right
instead. See the navbar docs for details.
-
-
-
-
Center content blocks
-
Set an element to display: block
and center via margin
. Available as a mixin and class.
-{% highlight html %}
-
...
-{% endhighlight %}
-{% highlight scss %}
-// Class
-.center-block {
- display: block;
- margin-left: auto;
- margin-right: auto;
-}
-
-// Usage as a mixin
-.element {
- .center-block();
-}
-{% endhighlight %}
-
-
-
Clearfix
-
Easily clear float
s by adding .clearfix
to the parent element. Utilizes the micro clearfix as popularized by Nicolas Gallagher. Can also be used as a mixin.
-{% highlight html %}
-
-
...
-{% endhighlight %}
-{% highlight scss %}
-// Mixin itself
-.clearfix() {
- &:before,
- &:after {
- content: " ";
- display: table;
- }
- &:after {
- clear: both;
- }
-}
-
-// Usage as a mixin
-.element {
- .clearfix();
-}
-{% endhighlight %}
-
-
-
Showing and hiding content
-
Force an element to be shown or hidden (including for screen readers) with the use of .show
and .hidden
classes. These classes use !important
to avoid specificity conflicts, just like the quick floats. They are only available for block level toggling. They can also be used as mixins.
-
.hide
is available, but it does not always affect screen readers and is deprecated as of v3.0.1. Use .hidden
or .sr-only
instead.
-
Furthermore, .invisible
can be used to toggle only the visibility of an element, meaning its display
is not modified and the element can still affect the flow of the document.
-{% highlight html %}
-
...
-
...
-{% endhighlight %}
-{% highlight scss %}
-// Classes
-.show {
- display: block !important;
-}
-.hidden {
- display: none !important;
-}
-.invisible {
- visibility: hidden;
-}
-
-// Usage as mixins
-.element {
- .show();
-}
-.another-element {
- .hidden();
-}
-{% endhighlight %}
-
-
-
Screen reader and keyboard navigation content
-
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. Can also be used as mixins.
-{% highlight html %}
-
Skip to main content
-{% endhighlight %}
-{% highlight scss %}
-// Usage as a mixin
-.skip-navigation {
- .sr-only();
- .sr-only-focusable();
-}
-{% endhighlight %}
-
-
-
Image replacement
-
Utilize the .text-hide
class or mixin to help replace an element's text content with a background image.
-{% highlight html %}
-
Custom heading
-{% endhighlight %}
-{% highlight scss %}
-// Usage as a mixin
-.heading {
- .text-hide();
-}
-{% endhighlight %}
-
diff --git a/vendor/bootstrap/docs/_includes/css/images.html b/vendor/bootstrap/docs/_includes/css/images.html
deleted file mode 100644
index a79a4d920..000000000
--- a/vendor/bootstrap/docs/_includes/css/images.html
+++ /dev/null
@@ -1,31 +0,0 @@
-
-
-
-
Bootstrap's CSS is built on Less, a preprocessor with additional functionality like variables, mixins, and functions for compiling CSS. Those looking to use the source Less files instead of our compiled CSS files can make use of the numerous variables and mixins we use throughout the framework.
-
-
Grid variables and mixins are covered within the Grid system section.
-
-
-
Compiling Bootstrap
-
Bootstrap can be used in at least two ways: with the compiled CSS or with the source Less files. To compile the Less files, consult the Getting Started section for how to setup your development environment to run the necessary commands.
-
Third party compilation tools may work with Bootstrap, but they are not supported by our core team.
-
-
Variables
-
Variables are used throughout the entire project as a way to centralize and share commonly used values like colors, spacing, or font stacks. For a complete breakdown, please see the Customizer.
-
-
Colors
-
Easily make use of two color schemes: grayscale and semantic. Grayscale colors provide quick access to commonly used shades of black while semantic include various colors assigned to meaningful contextual values.
-
-{% highlight scss %}
-@gray-darker: lighten(#000, 13.5%); // #222
-@gray-dark: lighten(#000, 20%); // #333
-@gray: lighten(#000, 33.5%); // #555
-@gray-light: lighten(#000, 46.7%); // #777
-@gray-lighter: lighten(#000, 93.5%); // #eee
-{% endhighlight %}
-
-
-{% highlight scss %}
-@brand-primary: darken(#428bca, 6.5%); // #337ab7
-@brand-success: #5cb85c;
-@brand-info: #5bc0de;
-@brand-warning: #f0ad4e;
-@brand-danger: #d9534f;
-{% endhighlight %}
-
-
Use any of these color variables as they are or reassign them to more meaningful variables for your project.
-{% highlight scss %}
-// Use as-is
-.masthead {
- background-color: @brand-primary;
-}
-
-// Reassigned variables in Less
-@alert-message-background: @brand-info;
-.alert {
- background-color: @alert-message-background;
-}
-{% endhighlight %}
-
-
Scaffolding
-
A handful of variables for quickly customizing key elements of your site's skeleton.
-{% highlight scss %}
-// Scaffolding
-@body-bg: #fff;
-@text-color: @black-50;
-{% endhighlight %}
-
-
Links
-
Easily style your links with the right color with only one value.
-{% highlight scss %}
-// Variables
-@link-color: @brand-primary;
-@link-hover-color: darken(@link-color, 15%);
-
-// Usage
-a {
- color: @link-color;
- text-decoration: none;
-
- &:hover {
- color: @link-hover-color;
- text-decoration: underline;
- }
-}
-{% endhighlight %}
-
Note that the @link-hover-color
uses a function, another awesome tool from Less, to automagically create the right hover color. You can use darken
, lighten
, saturate
, and desaturate
.
-
-
Typography
-
Easily set your typeface, text size, leading, and more with a few quick variables. Bootstrap makes use of these as well to provide easy typographic mixins.
-{% highlight scss %}
-@font-family-sans-serif: "Helvetica Neue", Helvetica, Arial, sans-serif;
-@font-family-serif: Georgia, "Times New Roman", Times, serif;
-@font-family-monospace: Menlo, Monaco, Consolas, "Courier New", monospace;
-@font-family-base: @font-family-sans-serif;
-
-@font-size-base: 14px;
-@font-size-large: ceil((@font-size-base * 1.25)); // ~18px
-@font-size-small: ceil((@font-size-base * 0.85)); // ~12px
-
-@font-size-h1: floor((@font-size-base * 2.6)); // ~36px
-@font-size-h2: floor((@font-size-base * 2.15)); // ~30px
-@font-size-h3: ceil((@font-size-base * 1.7)); // ~24px
-@font-size-h4: ceil((@font-size-base * 1.25)); // ~18px
-@font-size-h5: @font-size-base;
-@font-size-h6: ceil((@font-size-base * 0.85)); // ~12px
-
-@line-height-base: 1.428571429; // 20/14
-@line-height-computed: floor((@font-size-base * @line-height-base)); // ~20px
-
-@headings-font-family: inherit;
-@headings-font-weight: 500;
-@headings-line-height: 1.1;
-@headings-color: inherit;
-{% endhighlight %}
-
-
Icons
-
Two quick variables for customizing the location and filename of your icons.
-{% highlight scss %}
-@icon-font-path: "../fonts/";
-@icon-font-name: "glyphicons-halflings-regular";
-{% endhighlight %}
-
-
Components
-
Components throughout Bootstrap make use of some default variables for setting common values. Here are the most commonly used.
-{% highlight scss %}
-@padding-base-vertical: 6px;
-@padding-base-horizontal: 12px;
-
-@padding-large-vertical: 10px;
-@padding-large-horizontal: 16px;
-
-@padding-small-vertical: 5px;
-@padding-small-horizontal: 10px;
-
-@padding-xs-vertical: 1px;
-@padding-xs-horizontal: 5px;
-
-@line-height-large: 1.33;
-@line-height-small: 1.5;
-
-@border-radius-base: 4px;
-@border-radius-large: 6px;
-@border-radius-small: 3px;
-
-@component-active-color: #fff;
-@component-active-bg: @brand-primary;
-
-@caret-width-base: 4px;
-@caret-width-large: 5px;
-{% endhighlight %}
-
-
-
Vendor mixins
-
Vendor mixins are mixins to help support multiple browsers by including all relevant vendor prefixes in your compiled CSS.
-
-
-
Box-sizing
-
Reset your components' box model with a single mixin. For context, see this helpful article from Mozilla.
-
The mixin is deprecated as of v3.2.0, with the introduction of Autoprefixer. To preserve backwards-compatibility, Bootstrap will continue to use the mixin internally until Bootstrap v4.
-{% highlight scss %}
-.box-sizing(@box-model) {
- -webkit-box-sizing: @box-model; // Safari <= 5
- -moz-box-sizing: @box-model; // Firefox <= 19
- box-sizing: @box-model;
-}
-{% endhighlight %}
-
-
Rounded corners
-
Today all modern browsers support the non-prefixed border-radius
property. As such, there is no .border-radius()
mixin, but Bootstrap does include shortcuts for quickly rounding two corners on a particular side of an object.
-{% highlight scss %}
-.border-top-radius(@radius) {
- border-top-right-radius: @radius;
- border-top-left-radius: @radius;
-}
-.border-right-radius(@radius) {
- border-bottom-right-radius: @radius;
- border-top-right-radius: @radius;
-}
-.border-bottom-radius(@radius) {
- border-bottom-right-radius: @radius;
- border-bottom-left-radius: @radius;
-}
-.border-left-radius(@radius) {
- border-bottom-left-radius: @radius;
- border-top-left-radius: @radius;
-}
-{% endhighlight %}
-
-
Box (Drop) shadows
-
If your target audience is using the latest and greatest browsers and devices, be sure to just use the box-shadow
property on its own. If you need support for older Android (pre-v4) and iOS devices (pre-iOS 5), use the deprecated mixin to pick up the required -webkit
prefix.
-
The mixin is deprecated as of v3.1.0, since Bootstrap doesn't officially support the outdated platforms that don't support the standard property. To preserve backwards-compatibility, Bootstrap will continue to use the mixin internally until Bootstrap v4.
-
Be sure to use rgba()
colors in your box shadows so they blend as seamlessly as possible with backgrounds.
-{% highlight scss %}
-.box-shadow(@shadow: 0 1px 3px rgba(0,0,0,.25)) {
- -webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1
- box-shadow: @shadow;
-}
-{% endhighlight %}
-
-
Transitions
-
Multiple mixins for flexibility. Set all transition information with one, or specify a separate delay and duration as needed.
-
The mixins are deprecated as of v3.2.0, with the introduction of Autoprefixer. To preserve backwards-compatibility, Bootstrap will continue to use the mixins internally until Bootstrap v4.
-{% highlight scss %}
-.transition(@transition) {
- -webkit-transition: @transition;
- transition: @transition;
-}
-.transition-property(@transition-property) {
- -webkit-transition-property: @transition-property;
- transition-property: @transition-property;
-}
-.transition-delay(@transition-delay) {
- -webkit-transition-delay: @transition-delay;
- transition-delay: @transition-delay;
-}
-.transition-duration(@transition-duration) {
- -webkit-transition-duration: @transition-duration;
- transition-duration: @transition-duration;
-}
-.transition-timing-function(@timing-function) {
- -webkit-transition-timing-function: @timing-function;
- transition-timing-function: @timing-function;
-}
-.transition-transform(@transition) {
- -webkit-transition: -webkit-transform @transition;
- -moz-transition: -moz-transform @transition;
- -o-transition: -o-transform @transition;
- transition: transform @transition;
-}
-{% endhighlight %}
-
-
-
Rotate, scale, translate (move), or skew any object.
-
The mixins are deprecated as of v3.2.0, with the introduction of Autoprefixer. To preserve backwards-compatibility, Bootstrap will continue to use the mixins internally until Bootstrap v4.
-{% highlight scss %}
-.rotate(@degrees) {
- -webkit-transform: rotate(@degrees);
- -ms-transform: rotate(@degrees); // IE9 only
- transform: rotate(@degrees);
-}
-.scale(@ratio; @ratio-y...) {
- -webkit-transform: scale(@ratio, @ratio-y);
- -ms-transform: scale(@ratio, @ratio-y); // IE9 only
- transform: scale(@ratio, @ratio-y);
-}
-.translate(@x; @y) {
- -webkit-transform: translate(@x, @y);
- -ms-transform: translate(@x, @y); // IE9 only
- transform: translate(@x, @y);
-}
-.skew(@x; @y) {
- -webkit-transform: skew(@x, @y);
- -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+
- transform: skew(@x, @y);
-}
-.translate3d(@x; @y; @z) {
- -webkit-transform: translate3d(@x, @y, @z);
- transform: translate3d(@x, @y, @z);
-}
-
-.rotateX(@degrees) {
- -webkit-transform: rotateX(@degrees);
- -ms-transform: rotateX(@degrees); // IE9 only
- transform: rotateX(@degrees);
-}
-.rotateY(@degrees) {
- -webkit-transform: rotateY(@degrees);
- -ms-transform: rotateY(@degrees); // IE9 only
- transform: rotateY(@degrees);
-}
-.perspective(@perspective) {
- -webkit-perspective: @perspective;
- -moz-perspective: @perspective;
- perspective: @perspective;
-}
-.perspective-origin(@perspective) {
- -webkit-perspective-origin: @perspective;
- -moz-perspective-origin: @perspective;
- perspective-origin: @perspective;
-}
-.transform-origin(@origin) {
- -webkit-transform-origin: @origin;
- -moz-transform-origin: @origin;
- -ms-transform-origin: @origin; // IE9 only
- transform-origin: @origin;
-}
-{% endhighlight %}
-
-
Animations
-
A single mixin for using all of CSS3's animation properties in one declaration and other mixins for individual properties.
-
The mixins are deprecated as of v3.2.0, with the introduction of Autoprefixer. To preserve backwards-compatibility, Bootstrap will continue to use the mixins internally until Bootstrap v4.
-{% highlight scss %}
-.animation(@animation) {
- -webkit-animation: @animation;
- animation: @animation;
-}
-.animation-name(@name) {
- -webkit-animation-name: @name;
- animation-name: @name;
-}
-.animation-duration(@duration) {
- -webkit-animation-duration: @duration;
- animation-duration: @duration;
-}
-.animation-timing-function(@timing-function) {
- -webkit-animation-timing-function: @timing-function;
- animation-timing-function: @timing-function;
-}
-.animation-delay(@delay) {
- -webkit-animation-delay: @delay;
- animation-delay: @delay;
-}
-.animation-iteration-count(@iteration-count) {
- -webkit-animation-iteration-count: @iteration-count;
- animation-iteration-count: @iteration-count;
-}
-.animation-direction(@direction) {
- -webkit-animation-direction: @direction;
- animation-direction: @direction;
-}
-{% endhighlight %}
-
-
Opacity
-
Set the opacity for all browsers and provide a filter
fallback for IE8.
-{% highlight scss %}
-.opacity(@opacity) {
- opacity: @opacity;
- // IE8 filter
- @opacity-ie: (@opacity * 100);
- filter: ~"alpha(opacity=@{opacity-ie})";
-}
-{% endhighlight %}
-
-
Placeholder text
-
Provide context for form controls within each field.
-{% highlight scss %}
-.placeholder(@color: @input-color-placeholder) {
- &::-moz-placeholder { color: @color; } // Firefox
- &:-ms-input-placeholder { color: @color; } // Internet Explorer 10+
- &::-webkit-input-placeholder { color: @color; } // Safari and Chrome
-}
-{% endhighlight %}
-
-
Columns
-
Generate columns via CSS within a single element.
-{% highlight scss %}
-.content-columns(@width; @count; @gap) {
- -webkit-column-width: @width;
- -moz-column-width: @width;
- column-width: @width;
- -webkit-column-count: @count;
- -moz-column-count: @count;
- column-count: @count;
- -webkit-column-gap: @gap;
- -moz-column-gap: @gap;
- column-gap: @gap;
-}
-{% endhighlight %}
-
-
Gradients
-
Easily turn any two colors into a background gradient. Get more advanced and set a direction, use three colors, or use a radial gradient. With a single mixin you get all the prefixed syntaxes you'll need.
-{% highlight scss %}
-#gradient > .vertical(#333; #000);
-#gradient > .horizontal(#333; #000);
-#gradient > .radial(#333; #000);
-{% endhighlight %}
-
You can also specify the angle of a standard two-color, linear gradient:
-{% highlight scss %}
-#gradient > .directional(#333; #000; 45deg);
-{% endhighlight %}
-
If you need a barber-stripe style gradient, that's easy, too. Just specify a single color and we'll overlay a translucent white stripe.
-{% highlight scss %}
-#gradient > .striped(#333; 45deg);
-{% endhighlight %}
-
Up the ante and use three colors instead. Set the first color, the second color, the second color's color stop (a percentage value like 25%), and the third color with these mixins:
-{% highlight scss %}
-#gradient > .vertical-three-colors(#777; #333; 25%; #000);
-#gradient > .horizontal-three-colors(#777; #333; 25%; #000);
-{% endhighlight %}
-
Heads up! Should you ever need to remove a gradient, be sure to remove any IE-specific filter
you may have added. You can do that by using the .reset-filter()
mixin alongside background-image: none;
.
-
-
-
Utility mixins
-
Utility mixins are mixins that combine otherwise unrelated CSS properties to achieve a specific goal or task.
-
-
Clearfix
-
Forget adding class="clearfix"
to any element and instead add the .clearfix()
mixin where appropriate. Uses the micro clearfix from Nicolas Gallagher.
-{% highlight scss %}
-// Mixin
-.clearfix() {
- &:before,
- &:after {
- content: " ";
- display: table;
- }
- &:after {
- clear: both;
- }
-}
-
-// Usage
-.container {
- .clearfix();
-}
-{% endhighlight %}
-
-
Horizontal centering
-
Quickly center any element within its parent. Requires width
or max-width
to be set.
-{% highlight scss %}
-// Mixin
-.center-block() {
- display: block;
- margin-left: auto;
- margin-right: auto;
-}
-
-// Usage
-.container {
- width: 940px;
- .center-block();
-}
-{% endhighlight %}
-
-
Sizing helpers
-
Specify the dimensions of an object more easily.
-{% highlight scss %}
-// Mixins
-.size(@width; @height) {
- width: @width;
- height: @height;
-}
-.square(@size) {
- .size(@size; @size);
-}
-
-// Usage
-.image { .size(400px; 300px); }
-.avatar { .square(48px); }
-{% endhighlight %}
-
-
Resizable textareas
-
Easily configure the resize options for any textarea, or any other element. Defaults to normal browser behavior (both
).
-{% highlight scss %}
-.resizable(@direction: both) {
- // Options: horizontal, vertical, both
- resize: @direction;
- // Safari fix
- overflow: auto;
-}
-{% endhighlight %}
-
-
Truncating text
-
Easily truncate text with an ellipsis with a single mixin. Requires element to be block
or inline-block
level.
-{% highlight scss %}
-// Mixin
-.text-overflow() {
- overflow: hidden;
- text-overflow: ellipsis;
- white-space: nowrap;
-}
-
-// Usage
-.branch-name {
- display: inline-block;
- max-width: 200px;
- .text-overflow();
-}
-{% endhighlight %}
-
-
Retina images
-
Specify two image paths and the @1x image dimensions, and Bootstrap will provide an @2x media query. If you have many images to serve, consider writing your retina image CSS manually in a single media query.
-{% highlight scss %}
-.img-retina(@file-1x; @file-2x; @width-1x; @height-1x) {
- background-image: url("@{file-1x}");
-
- @media
- only screen and (-webkit-min-device-pixel-ratio: 2),
- only screen and ( min--moz-device-pixel-ratio: 2),
- only screen and ( -o-min-device-pixel-ratio: 2/1),
- only screen and ( min-device-pixel-ratio: 2),
- only screen and ( min-resolution: 192dpi),
- only screen and ( min-resolution: 2dppx) {
- background-image: url("@{file-2x}");
- background-size: @width-1x @height-1x;
- }
-}
-
-// Usage
-.jumbotron {
- .img-retina("/img/bg-1x.png", "/img/bg-2x.png", 100px, 100px);
-}
-{% endhighlight %}
-
diff --git a/vendor/bootstrap/docs/_includes/css/overview.html b/vendor/bootstrap/docs/_includes/css/overview.html
deleted file mode 100644
index bd0e53848..000000000
--- a/vendor/bootstrap/docs/_includes/css/overview.html
+++ /dev/null
@@ -1,52 +0,0 @@
-
-
-
-
For faster mobile-friendly development, use these utility classes for showing and hiding content by device via media query. Also included are utility classes for toggling content when printed.
-
Try to use these on a limited basis and avoid creating entirely different versions of the same site. Instead, use them to complement each device's presentation.
-
-
-
Available classes
-
Use a single or combination of the available classes for toggling content across viewport breakpoints.
-
-
-
-
- |
-
- Extra small devices
- Phones (<768px)
- |
-
- Small devices
- Tablets (≥768px)
- |
-
- Medium devices
- Desktops (≥992px)
- |
-
- Large devices
- Desktops (≥1200px)
- |
-
-
-
-
- .visible-xs-* |
- Visible |
- Hidden |
- Hidden |
- Hidden |
-
-
- .visible-sm-* |
- Hidden |
- Visible |
- Hidden |
- Hidden |
-
-
- .visible-md-* |
- Hidden |
- Hidden |
- Visible |
- Hidden |
-
-
- .visible-lg-* |
- Hidden |
- Hidden |
- Hidden |
- Visible |
-
-
-
-
- .hidden-xs |
- Hidden |
- Visible |
- Visible |
- Visible |
-
-
- .hidden-sm |
- Visible |
- Hidden |
- Visible |
- Visible |
-
-
- .hidden-md |
- Visible |
- Visible |
- Hidden |
- Visible |
-
-
- .hidden-lg |
- Visible |
- Visible |
- Visible |
- Hidden |
-
-
-
-
-
-
As of v3.2.0, the .visible-*-*
classes for each breakpoint come in three variations, one for each CSS display
property value listed below.
-
-
-
-
- Group of classes |
- CSS display |
-
-
-
-
- .visible-*-block |
- display: block; |
-
-
- .visible-*-inline |
- display: inline; |
-
-
- .visible-*-inline-block |
- display: inline-block; |
-
-
-
-
-
So, for extra small (xs
) screens for example, the available .visible-*-*
classes are: .visible-xs-block
, .visible-xs-inline
, and .visible-xs-inline-block
.
-
The classes .visible-xs
, .visible-sm
, .visible-md
, and .visible-lg
also exist, but are deprecated as of v3.2.0. They are approximately equivalent to .visible-*-block
, except with additional special cases for toggling <table>
-related elements.
-
-
Print classes
-
Similar to the regular responsive classes, use these for toggling content for print.
-
-
-
-
- Classes |
- Browser |
- Print |
-
-
-
-
-
- .visible-print-block
- .visible-print-inline
- .visible-print-inline-block
- |
- Hidden |
- Visible |
-
-
- .hidden-print |
- Visible |
- Hidden |
-
-
-
-
-
The class .visible-print
also exists but is deprecated as of v3.2.0. It is approximately equivalent to .visible-print-block
, except with additional special cases for <table>
-related elements.
-
-
-
Test cases
-
Resize your browser or load on different devices to test the responsive utility classes.
-
-
Visible on...
-
Green checkmarks indicate the element is visible in your current viewport.
-
-
- Extra small
- ✔ Visible on x-small
-
-
- Small
- ✔ Visible on small
-
-
-
- Medium
- ✔ Visible on medium
-
-
- Large
- ✔ Visible on large
-
-
-
-
- Extra small and small
- ✔ Visible on x-small and small
-
-
- Medium and large
- ✔ Visible on medium and large
-
-
-
- Extra small and medium
- ✔ Visible on x-small and medium
-
-
- Small and large
- ✔ Visible on small and large
-
-
-
- Extra small and large
- ✔ Visible on x-small and large
-
-
- Small and medium
- ✔ Visible on small and medium
-
-
-
-
Hidden on...
-
Here, green checkmarks also indicate the element is hidden in your current viewport.
-
-
- Extra small
- ✔ Hidden on x-small
-
-
- Small
- ✔ Hidden on small
-
-
-
- Medium
- ✔ Hidden on medium
-
-
- Large
- ✔ Hidden on large
-
-
-
-
- Extra small and small
- ✔ Hidden on x-small and small
-
-
- Medium and large
- ✔ Hidden on medium and large
-
-
-
- Extra small and medium
- ✔ Hidden on x-small and medium
-
-
- Small and large
- ✔ Hidden on small and large
-
-
-
- Extra small and large
- ✔ Hidden on x-small and large
-
-
- Small and medium
- ✔ Hidden on small and medium
-
-
-
diff --git a/vendor/bootstrap/docs/_includes/css/sass.html b/vendor/bootstrap/docs/_includes/css/sass.html
deleted file mode 100644
index 35739ddc6..000000000
--- a/vendor/bootstrap/docs/_includes/css/sass.html
+++ /dev/null
@@ -1,52 +0,0 @@
-
-
-
-
-
Headings
-
All HTML headings, <h1>
through <h6>
, are available. .h1
through .h6
classes are also available, for when you want to match the font styling of a heading but still want your text to be displayed inline.
-
-
-
-
- h1. Bootstrap heading |
- Semibold 36px |
-
-
- h2. Bootstrap heading |
- Semibold 30px |
-
-
- h3. Bootstrap heading |
- Semibold 24px |
-
-
- h4. Bootstrap heading |
- Semibold 18px |
-
-
- h5. Bootstrap heading |
- Semibold 14px |
-
-
- h6. Bootstrap heading |
- Semibold 12px |
-
-
-
-
-{% highlight html %}
-
h1. Bootstrap heading
-
h2. Bootstrap heading
-
h3. Bootstrap heading
-
h4. Bootstrap heading
-
h5. Bootstrap heading
-
h6. Bootstrap heading
-{% endhighlight %}
-
-
Create lighter, secondary text in any heading with a generic <small>
tag or the .small
class.
-
-
-
-
- h1. Bootstrap heading Secondary text |
-
-
- h2. Bootstrap heading Secondary text |
-
-
- h3. Bootstrap heading Secondary text |
-
-
- h4. Bootstrap heading Secondary text |
-
-
- h5. Bootstrap heading Secondary text |
-
-
- h6. Bootstrap heading Secondary text |
-
-
-
-
-{% highlight html %}
-
h1. Bootstrap heading Secondary text
-
h2. Bootstrap heading Secondary text
-
h3. Bootstrap heading Secondary text
-
h4. Bootstrap heading Secondary text
-
h5. Bootstrap heading Secondary text
-
h6. Bootstrap heading Secondary text
-{% endhighlight %}
-
-
-
-
Body copy
-
Bootstrap's global default font-size
is 14px, with a line-height
of 1.428. This is applied to the <body>
and all paragraphs. In addition, <p>
(paragraphs) receive a bottom margin of half their computed line-height (10px by default).
-
-
Nullam quis risus eget urna mollis ornare vel eu leo. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nullam id dolor id nibh ultricies vehicula.
-
Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec ullamcorper nulla non metus auctor fringilla. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Donec ullamcorper nulla non metus auctor fringilla.
-
Maecenas sed diam eget risus varius blandit sit amet non magna. Donec id elit non mi porta gravida at eget metus. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit.
-
-{% highlight html %}
-
...
-{% endhighlight %}
-
-
-
Lead body copy
-
Make a paragraph stand out by adding .lead
.
-
-
Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor. Duis mollis, est non commodo luctus.
-
-{% highlight html %}
-
...
-{% endhighlight %}
-
-
-
Built with Less
-
The typographic scale is based on two Less variables in variables.less: @font-size-base
and @line-height-base
. The first is the base font-size used throughout and the second is the base line-height. We use those variables and some simple math to create the margins, paddings, and line-heights of all our type and more. Customize them and Bootstrap adapts.
-
-
-
Inline text elements
-
Marked text
-
For highlighting a run of text due to its relevance in another context, use the <mark>
tag.
-
-
You can use the mark tag to highlight text.
-
-{% highlight html %}
-You can use the mark tag to
highlight text.
-{% endhighlight %}
-
-
-
Deleted text
-
For indicating blocks of text that have been deleted use the <del>
tag.
-
-
This line of text is meant to be treated as deleted text.
-
-{% highlight html %}
-
This line of text is meant to be treated as deleted text.
-{% endhighlight %}
-
-
Strikethrough text
-
For indicating blocks of text that are no longer relevant use the <s>
tag.
-
-
This line of text is meant to be treated as no longer accurate.
-
-{% highlight html %}
-
This line of text is meant to be treated as no longer accurate.
-{% endhighlight %}
-
-
Inserted text
-
For indicating additions to the document use the <ins>
tag.
-
-
This line of text is meant to be treated as an addition to the document.
-
-{% highlight html %}
-
This line of text is meant to be treated as an addition to the document.
-{% endhighlight %}
-
-
Underlined text
-
To underline text use the <u>
tag.
-
-
This line of text will render as underlined
-
-{% highlight html %}
-
This line of text will render as underlined
-{% endhighlight %}
-
-
Make use of HTML's default emphasis tags with lightweight styles.
-
-
Small text
-
For de-emphasizing inline or blocks of text, use the <small>
tag to set text at 85% the size of the parent. Heading elements receive their own font-size
for nested <small>
elements.
-
You may alternatively use an inline element with .small
in place of any <small>
.
-
-
This line of text is meant to be treated as fine print.
-
-{% highlight html %}
-
This line of text is meant to be treated as fine print.
-{% endhighlight %}
-
-
-
Bold
-
For emphasizing a snippet of text with a heavier font-weight.
-
-
The following snippet of text is rendered as bold text.
-
-{% highlight html %}
-
rendered as bold text
-{% endhighlight %}
-
-
Italics
-
For emphasizing a snippet of text with italics.
-
-
The following snippet of text is rendered as italicized text.
-
-{% highlight html %}
-
rendered as italicized text
-{% endhighlight %}
-
-
-
Alternate elements
-
Feel free to use <b>
and <i>
in HTML5. <b>
is meant to highlight words or phrases without conveying additional importance while <i>
is mostly for voice, technical terms, etc.
-
-
-
Alignment classes
-
Easily realign text to components with text alignment classes.
-
-
Left aligned text.
-
Center aligned text.
-
Right aligned text.
-
Justified text.
-
No wrap text.
-
-{% highlight html %}
-
Left aligned text.
-
Center aligned text.
-
Right aligned text.
-
Justified text.
-
No wrap text.
-{% endhighlight %}
-
-
-
Transform text in components with text capitalization classes.
-
-
Lowercased text.
-
Uppercased text.
-
Capitalized text.
-
-{% highlight html %}
-
Lowercased text.
-
Uppercased text.
-
Capitalized text.
-{% endhighlight %}
-
-
-
Abbreviations
-
Stylized implementation of HTML's <abbr>
element for abbreviations and acronyms to show the expanded version on hover. Abbreviations with a title
attribute have a light dotted bottom border and a help cursor on hover, providing additional context on hover and to users of assistive technologies.
-
-
Basic abbreviation
-
-
An abbreviation of the word attribute is attr.
-
-{% highlight html %}
-
attr
-{% endhighlight %}
-
-
Initialism
-
Add .initialism
to an abbreviation for a slightly smaller font-size.
-
-
HTML is the best thing since sliced bread.
-
-{% highlight html %}
-
HTML
-{% endhighlight %}
-
-
-
-
Addresses
-
Present contact information for the nearest ancestor or the entire body of work. Preserve formatting by ending all lines with <br>
.
-
-
- Twitter, Inc.
- 1355 Market Street, Suite 900
- San Francisco, CA 94103
- P: (123) 456-7890
-
-
- Full Name
- first.last@example.com
-
-
-{% highlight html %}
-
- Twitter, Inc.
- 1355 Market Street, Suite 900
- San Francisco, CA 94103
- P: (123) 456-7890
-
-
-
- Full Name
- first.last@example.com
-
-{% endhighlight %}
-
-
-
-
Blockquotes
-
For quoting blocks of content from another source within your document.
-
-
Default blockquote
-
Wrap <blockquote>
around any HTML as the quote. For straight quotes, we recommend a <p>
.
-
-
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.
-
-
-{% highlight html %}
-
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.
-
-{% endhighlight %}
-
-
Blockquote options
-
Style and content changes for simple variations on a standard <blockquote>
.
-
-
Naming a source
-
Add a <footer>
for identifying the source. Wrap the name of the source work in <cite>
.
-
-
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.
-
-
-
-{% highlight html %}
-
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.
-
-
-{% endhighlight %}
-
-
Alternate displays
-
Add .blockquote-reverse
for a blockquote with right-aligned content.
-
-
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.
-
-
-
-{% highlight html %}
-
- ...
-
-{% endhighlight %}
-
-
-
-
Lists
-
-
Unordered
-
A list of items in which the order does not explicitly matter.
-
-
- - Lorem ipsum dolor sit amet
- - Consectetur adipiscing elit
- - Integer molestie lorem at massa
- - Facilisis in pretium nisl aliquet
- - Nulla volutpat aliquam velit
-
- - Phasellus iaculis neque
- - Purus sodales ultricies
- - Vestibulum laoreet porttitor sem
- - Ac tristique libero volutpat at
-
-
- - Faucibus porta lacus fringilla vel
- - Aenean sit amet erat nunc
- - Eget porttitor lorem
-
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
Ordered
-
A list of items in which the order does explicitly matter.
-
-
- - Lorem ipsum dolor sit amet
- - Consectetur adipiscing elit
- - Integer molestie lorem at massa
- - Facilisis in pretium nisl aliquet
- - Nulla volutpat aliquam velit
- - Faucibus porta lacus fringilla vel
- - Aenean sit amet erat nunc
- - Eget porttitor lorem
-
-
-{% highlight html %}
-
- - ...
-
-{% endhighlight %}
-
-
Unstyled
-
Remove the default list-style
and left margin on list items (immediate children only). This only applies to immediate children list items, meaning you will need to add the class for any nested lists as well.
-
-
- - Lorem ipsum dolor sit amet
- - Consectetur adipiscing elit
- - Integer molestie lorem at massa
- - Facilisis in pretium nisl aliquet
- - Nulla volutpat aliquam velit
-
- - Phasellus iaculis neque
- - Purus sodales ultricies
- - Vestibulum laoreet porttitor sem
- - Ac tristique libero volutpat at
-
-
- - Faucibus porta lacus fringilla vel
- - Aenean sit amet erat nunc
- - Eget porttitor lorem
-
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
Inline
-
Place all list items on a single line with display: inline-block;
and some light padding.
-
-
- - Lorem ipsum
- - Phasellus iaculis
- - Nulla volutpat
-
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
Description
-
A list of terms with their associated descriptions.
-
-
- - Description lists
- - A description list is perfect for defining terms.
- - Euismod
- - Vestibulum id ligula porta felis euismod semper eget lacinia odio sem nec elit.
- - Donec id elit non mi porta gravida at eget metus.
- - Malesuada porta
- - Etiam porta sem malesuada magna mollis euismod.
-
-
-{% highlight html %}
-
- - ...
- - ...
-
-{% endhighlight %}
-
-
Horizontal description
-
Make terms and descriptions in <dl>
line up side-by-side. Starts off stacked like default <dl>
s, but when the navbar expands, so do these.
-
-
- - Description lists
- - A description list is perfect for defining terms.
- - Euismod
- - Vestibulum id ligula porta felis euismod semper eget lacinia odio sem nec elit.
- - Donec id elit non mi porta gravida at eget metus.
- - Malesuada porta
- - Etiam porta sem malesuada magna mollis euismod.
- - Felis euismod semper eget lacinia
- - Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.
-
-
-{% highlight html %}
-
- - ...
- - ...
-
-{% endhighlight %}
-
-
-
Auto-truncating
-
Horizontal description lists will truncate terms that are too long to fit in the left column with text-overflow
. In narrower viewports, they will change to the default stacked layout.
-
-
diff --git a/vendor/bootstrap/docs/_includes/customizer-variables.html b/vendor/bootstrap/docs/_includes/customizer-variables.html
deleted file mode 100644
index 93819af6a..000000000
--- a/vendor/bootstrap/docs/_includes/customizer-variables.html
+++ /dev/null
@@ -1,1892 +0,0 @@
-
-
-Gray and brand colors for use across Bootstrap.
-Settings for some of the most global styles.
-Font, line-height, and color for body text, headings, and more.
-Specify custom location and filename of the included Glyphicons icon font. Useful for those including Bootstrap via Bower.
-Define common padding and border radius sizes and more. Values based on 14px text and 1.428 line-height (~20px to start).
-For each of Bootstrap's buttons, define text, background and border color.
-Dropdown menu container and contents.
-Define the breakpoints at which your layout will change, adapting to different screen sizes.
-Define your custom responsive grid.
-Define colors for form feedback states and, by default, alerts.
-Define alert colors, border radius, and padding.
-
-
-
Bootstrap is built to work best in the latest desktop and mobile browsers, meaning older browsers might display differently styled, though fully functional, renderings of certain components.
-
-
Supported browsers
-
Specifically, we support the latest versions of the following browsers and platforms.
-
-
Alternative browsers which use the latest version of WebKit, Blink, or Gecko, whether directly or via the platform's web view API, are not explicitly supported. However, Bootstrap should (in most cases) display and function correctly in these browsers as well. More specific support information is provided below.
-
-
Mobile devices
-
Generally speaking, Bootstrap supports the latest versions of each major platform's default browsers. Note that proxy browsers (such as Opera Mini, Opera Mobile's Turbo mode, UC Browser Mini, Amazon Silk) are not supported.
-
-
-
-
-
- |
- Chrome |
- Firefox |
- Safari |
-
-
-
-
- Android |
- Supported |
- Supported |
- N/A |
-
-
- iOS |
- Supported |
- Supported |
- Supported |
-
-
-
-
-
-
Desktop browsers
-
Similarly, the latest versions of most desktop browsers are supported.
-
-
-
-
-
- |
- Chrome |
- Firefox |
- Internet Explorer |
- Opera |
- Safari |
-
-
-
-
- Mac |
- Supported |
- Supported |
- N/A |
- Supported |
- Supported |
-
-
- Windows |
- Supported |
- Supported |
- Supported |
- Supported |
- Not supported |
-
-
-
-
-
-
On Windows, we support Internet Explorer 8-11.
-
-
For Firefox, in addition to the latest normal stable release, we also support the latest Extended Support Release (ESR) version of Firefox.
-
-
Unofficially, Bootstrap should look and behave well enough in Chromium and Chrome for Linux, Firefox for Linux, and Internet Explorer 7, as well as Microsoft Edge, 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.
-
-
Internet Explorer 8 and 9
-
Internet Explorer 8 and 9 are also supported, however, please be aware that some CSS3 properties and HTML5 elements are not fully supported by these browsers. In addition, Internet Explorer 8 requires the use of Respond.js to enable media query support.
-
-
-
-
- Feature |
- Internet Explorer 8 |
- Internet Explorer 9 |
-
-
-
-
- border-radius |
- Not supported |
- Supported |
-
-
- box-shadow |
- Not supported |
- Supported |
-
-
- transform |
- Not supported |
- Supported, with -ms prefix |
-
-
- transition |
- Not supported |
-
-
- placeholder |
- Not supported |
-
-
-
-
-
-
Visit Can I use... for details on browser support of CSS3 and HTML5 features.
-
-
Internet Explorer 8 and Respond.js
-
Beware of the following caveats when using Respond.js in your development and production environments for Internet Explorer 8.
-
Respond.js and cross-domain CSS
-
Using Respond.js with CSS hosted on a different (sub)domain (for example, on a CDN) requires some additional setup. See the Respond.js docs for details.
-
Respond.js and file://
-
Due to browser security rules, Respond.js doesn't work with pages viewed via the file://
protocol (like when opening a local HTML file). To test responsive features in IE8, view your pages over HTTP(S). See the Respond.js docs for details.
-
Respond.js and @import
-
Respond.js doesn't work with CSS that's referenced via @import
. In particular, some Drupal configurations are known to use @import
. See the Respond.js docs for details.
-
-
Internet Explorer 8 and box-sizing
-
IE8 does not fully support box-sizing: border-box;
when combined with min-width
, max-width
, min-height
, or max-height
. For that reason, as of v3.0.1, we no longer use max-width
on .container
s.
-
-
Internet Explorer 8 and @font-face
-
IE8 has some issues with @font-face
when combined with :before
. Bootstrap uses that combination with its Glyphicons. If a page is cached, and loaded without the mouse over the window (i.e. hit the refresh button or load something in an iframe) then the page gets rendered before the font loads. Hovering over the page (body) will show some of the icons and hovering over the remaining icons will show those as well. See issue #13863 for details.
-
-
IE Compatibility modes
-
Bootstrap is not supported in the old Internet Explorer compatibility modes. To be sure you're using the latest rendering mode for IE, consider including the appropriate <meta>
tag in your pages:
-{% highlight html %}
-
-{% endhighlight %}
-
Confirm the document mode by opening the debugging tools: press F12 and check the "Document Mode".
-
This tag is included in all of Bootstrap's documentation and examples to ensure the best rendering possible in each supported version of Internet Explorer.
-
See this StackOverflow question for more information.
-
-
Internet Explorer 10 in Windows 8 and Windows Phone 8
-
Internet Explorer 10 doesn't differentiate device width from viewport width, and thus doesn't properly apply the media queries in Bootstrap's CSS. Normally you'd just add a quick snippet of CSS to fix this:
-{% highlight scss %}
-@-ms-viewport { width: device-width; }
-{% endhighlight %}
-
However, this doesn't work for devices running Windows Phone 8 versions older than Update 3 (a.k.a. GDR3), as it causes such devices to show a mostly desktop view instead of narrow "phone" view. To address this, you'll need to include the following CSS and JavaScript to work around the bug.
-{% highlight scss %}
-@-ms-viewport { width: device-width; }
-@-o-viewport { width: device-width; }
-@viewport { width: device-width; }
-{% endhighlight %}
-
-{% highlight js %}
-// Copyright 2014-2015 Twitter, Inc.
-// Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
-if (navigator.userAgent.match(/IEMobile\/10\.0/)) {
- var msViewportStyle = document.createElement('style')
- msViewportStyle.appendChild(
- document.createTextNode(
- '@-ms-viewport{width:auto!important}'
- )
- )
- document.querySelector('head').appendChild(msViewportStyle)
-}
-{% endhighlight %}
-
For more information and usage guidelines, read Windows Phone 8 and Device-Width.
-
As a heads up, we include this in all of Bootstrap's documentation and examples as a demonstration.
-
-
Safari percent rounding
-
The rendering engine of versions of Safari prior to v7.1 for OS X and Safari for iOS v8.0 had some trouble with the number of decimal places used in our .col-*-1
grid classes. So if you had 12 individual grid columns, you'd notice that they came up short compared to other rows of columns. Besides upgrading Safari/iOS, you have some options for workarounds:
-
- - Add
.pull-right
to your last grid column to get the hard-right alignment
- - Tweak your percentages manually to get the perfect rounding for Safari (more difficult than the first option)
-
-
-
Modals, navbars, and virtual keyboards
-
Overflow and scrolling
-
Support for overflow: hidden
on the <body>
element is quite limited in iOS and Android. To that end, when you scroll past the top or bottom of a modal in either of those devices' browsers, the <body>
content will begin to scroll. See Chrome bug #175502 (fixed in Chrome v40) and WebKit bug #153852.
-
iOS text fields and scrolling
-
As of iOS 9.3, while a modal is open, if the initial touch of a scroll gesture is within the boundary of a textual <input>
or a <textarea>
, the <body>
content underneath the modal will be scrolled instead of the modal itself. See WebKit bug #153856.
-
Virtual keyboards
-
Also, note that if you're using a fixed navbar or using inputs within a modal, iOS has a rendering bug that doesn't update the position of fixed elements when the virtual keyboard is triggered. A few workarounds for this include transforming your elements to position: absolute
or invoking a timer on focus to try to correct the positioning manually. This is not handled by Bootstrap, so it is up to you to decide which solution is best for your application.
-
Navbar Dropdowns
-
The .dropdown-backdrop
element isn't used on iOS in the nav because of the complexity of z-indexing. Thus, to close dropdowns in navbars, you must directly click the dropdown element (or any other element which will fire a click event in iOS).
-
-
Browser zooming
-
Page zooming inevitably presents rendering artifacts in some components, both in Bootstrap and the rest of the web. Depending on the issue, we may be able to fix it (search first and then open an issue if need be). However, we tend to ignore these as they often have no direct solution other than hacky workarounds.
-
-
Sticky :hover
/:focus
on mobile
-
Even though real hovering isn't possible on most touchscreens, most mobile browsers emulate hovering support and make :hover
"sticky". In other words, :hover
styles start applying after tapping an element and only stop applying after the user taps some other element. This can cause Bootstrap's :hover
states to become undesirably "stuck" on such browsers. Some mobile browsers also make :focus
similarly sticky. There is currently no simple workaround for these issues other than removing such styles entirely.
-
-
Printing
-
Even in some modern browsers, printing can be quirky.
-
In particular, as of Chrome v32 and regardless of margin settings, Chrome uses a viewport width significantly narrower than the physical paper size when resolving media queries while printing a webpage. This can result in Bootstrap's extra-small grid being unexpectedly activated when printing. See issue #12078 and Chrome bug #273306 for some details. Suggested workarounds:
-
- - Embrace the extra-small grid and make sure your page looks acceptable under it.
- - Customize the values of the
@screen-*
Less variables so that your printer paper is considered larger than extra-small.
- - Add custom media queries to change the grid size breakpoints for print media only.
-
-
Also, as of Safari v8.0, fixed-width .container
s can cause Safari to use an unusually small font size when printing. See #14868 and WebKit bug #138192 for more details. One potential workaround for this is adding the following CSS:
-{% highlight css %}
-@media print {
- .container {
- width: auto;
- }
-}
-{% endhighlight %}
-
-
Android stock browser
-
Out of the box, Android 4.1 (and even some newer releases apparently) ship with the Browser app as the default web browser of choice (as opposed to Chrome). Unfortunately, the Browser app has lots of bugs and inconsistencies with CSS in general.
-
Select menus
-
On <select>
elements, the Android stock browser will not display the side controls if there is a border-radius
and/or border
applied. (See this StackOverflow question for details.) Use the snippet of code below to remove the offending CSS and render the <select>
as an unstyled element on the Android stock browser. The user agent sniffing avoids interference with Chrome, Safari, and Mozilla browsers.
-{% highlight html %}
-
-{% endhighlight %}
-
Want to see an example? Check out this JS Bin demo.
-
-
Validators
-
In order to provide the best possible experience to old and buggy browsers, Bootstrap uses CSS browser hacks in several places to target special CSS to certain browser versions in order to work around bugs in the browsers themselves. These hacks understandably cause CSS validators to complain that they are invalid. In a couple places, we also use bleeding-edge CSS features that aren't yet fully standardized, but these are used purely for progressive enhancement.
-
These validation warnings don't matter in practice since the non-hacky portion of our CSS does fully validate and the hacky portions don't interfere with the proper functioning of the non-hacky portion, hence why we deliberately ignore these particular warnings.
-
Our HTML docs likewise have some trivial and inconsequential HTML validation warnings due to our inclusion of a workaround for a certain Firefox bug.
-
diff --git a/vendor/bootstrap/docs/_includes/getting-started/community.html b/vendor/bootstrap/docs/_includes/getting-started/community.html
deleted file mode 100644
index 73a88f807..000000000
--- a/vendor/bootstrap/docs/_includes/getting-started/community.html
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
-
Example
-
The affix plugin toggles position: fixed;
on and off, emulating the effect found with position: sticky;
. The subnavigation on the right is a live demo of the affix plugin.
-
-
-
-
Usage
-
Use the affix plugin via data attributes or manually with your own JavaScript. In both situations, you must provide CSS for the positioning and width of your affixed content.
-
Note: Do not use the affix plugin on an element contained in a relatively positioned element, such as a pulled or pushed column, due to a Safari rendering bug.
-
-
Positioning via CSS
-
The affix plugin toggles between three classes, each representing a particular state: .affix
, .affix-top
, and .affix-bottom
. You must provide the styles, with the exception of position: fixed;
on .affix
, for these classes yourself (independent of this plugin) to handle the actual positions.
-
Here's how the affix plugin works:
-
- - To start, the plugin adds
.affix-top
to indicate the element is in its top-most position. At this point no CSS positioning is required.
- - Scrolling past the element you want affixed should trigger the actual affixing. This is where
.affix
replaces .affix-top
and sets position: fixed;
(provided by Bootstrap's CSS).
- - If a bottom offset is defined, scrolling past it should replace
.affix
with .affix-bottom
. Since offsets are optional, setting one requires you to set the appropriate CSS. In this case, add position: absolute;
when necessary. The plugin uses the data attribute or JavaScript option to determine where to position the element from there.
-
-
Follow the above steps to set your CSS for either of the usage options below.
-
-
Via data attributes
-
To easily add affix behavior to any element, just add data-spy="affix"
to the element you want to spy on. Use offsets to define when to toggle the pinning of an element.
-
-{% highlight html %}
-
- ...
-
-{% endhighlight %}
-
-
Via JavaScript
-
Call the affix plugin via JavaScript:
-{% highlight js %}
-$('#myAffix').affix({
- offset: {
- top: 100,
- bottom: function () {
- return (this.bottom = $('.footer').outerHeight(true))
- }
- }
-})
-{% endhighlight %}
-
-
-
Options
-
Options can be passed via data attributes or JavaScript. For data attributes, append the option name to data-
, as in data-offset-top="200"
.
-
-
-
-
-
- Name |
- type |
- default |
- description |
-
-
-
-
- offset |
- number | function | object |
- 10 |
- Pixels to offset from screen when calculating position of scroll. If a single number is provided, the offset will be applied in both top and bottom directions. To provide a unique, bottom and top offset just provide an object offset: { top: 10 } or offset: { top: 10, bottom: 5 } . Use a function when you need to dynamically calculate an offset. |
-
-
- target |
- selector | node | jQuery element |
- the window object |
- Specifies the target element of the affix. |
-
-
-
-
-
-
-
Methods
-
-
.affix(options)
-
Activates your content as affixed content. Accepts an optional options object
.
-{% highlight js %}
-$('#myAffix').affix({
- offset: 15
-})
-{% endhighlight %}
-
-
.affix('checkPosition')
-
Recalculates the state of the affix based on the dimensions, position, and scroll position of the relevant elements. The .affix
, .affix-top
, and .affix-bottom
classes are added to or removed from the affixed content according to the new state. This method needs to be called whenever the dimensions of the affixed content or the target element are changed, to ensure correct positioning of the affixed content.
- {% highlight js %}$('#myAffix').affix('checkPosition'){% endhighlight %}
-
-
Events
-
Bootstrap's affix plugin exposes a few events for hooking into affix functionality.
-
-
-
-
- Event Type |
- Description |
-
-
-
-
- affix.bs.affix |
- This event fires immediately before the element has been affixed. |
-
-
- affixed.bs.affix |
- This event is fired after the element has been affixed. |
-
-
- affix-top.bs.affix |
- This event fires immediately before the element has been affixed-top. |
-
-
- affixed-top.bs.affix |
- This event is fired after the element has been affixed-top. |
-
-
- affix-bottom.bs.affix |
- This event fires immediately before the element has been affixed-bottom. |
-
-
- affixed-bottom.bs.affix |
- This event is fired after the element has been affixed-bottom. |
-
-
-
-
-
diff --git a/vendor/bootstrap/docs/_includes/js/alerts.html b/vendor/bootstrap/docs/_includes/js/alerts.html
deleted file mode 100644
index 711fd6c40..000000000
--- a/vendor/bootstrap/docs/_includes/js/alerts.html
+++ /dev/null
@@ -1,73 +0,0 @@
-
-
-
-
A slideshow component for cycling through elements, like a carousel. Nested carousels are not supported.
-
-
Examples
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
-
Accessibility issue
-
The carousel component is generally not compliant with accessibility standards. If you need to be compliant, please consider other options for presenting your content.
-
-
-
-
Transition animations not supported in Internet Explorer 8 & 9
-
Bootstrap exclusively uses CSS3 for its animations, but Internet Explorer 8 & 9 don't support the necessary CSS properties. Thus, there are no slide transition animations when using these browsers. We have intentionally decided not to include jQuery-based fallbacks for the transitions.
-
-
-
-
Initial active element required
-
The .active
class needs to be added to one of the slides. Otherwise, the carousel will not be visible.
-
-
-
-
Glyphicon icons not necessary
-
The .glyphicon .glyphicon-chevron-left
and .glyphicon .glyphicon-chevron-right
classes are not necessarily needed for the controls. Bootstrap provides .icon-prev
and .icon-next
as plain unicode alternatives.
-
-
-
Optional captions
-
Add captions to your slides easily with the .carousel-caption
element within any .item
. Place just about any optional HTML within there and it will be automatically aligned and formatted.
-
-
-
-
-
-
-
-
-
-
-
-
First slide label
-
Nulla vitae elit libero, a pharetra augue mollis interdum.
-
-
-
-
-
-
Second slide label
-
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
-
-
-
-
-
-
Third slide label
-
Praesent commodo cursus magna, vel scelerisque nisl consectetur.
-
-
-
-
-
- Previous
-
-
-
- Next
-
-
-
-{% highlight html %}
-
-
-
-
-{% endhighlight %}
-
-
Usage
-
-
Multiple carousels
-
Carousels require the use of an id
on the outermost container (the .carousel
) for carousel controls to function properly. When adding multiple carousels, or when changing a carousel's id
, be sure to update the relevant controls.
-
-
Via data attributes
-
Use data attributes to easily control the position of the carousel. data-slide
accepts the keywords prev
or next
, which alters the slide position relative to its current position. Alternatively, use data-slide-to
to pass a raw slide index to the carousel data-slide-to="2"
, which shifts the slide position to a particular index beginning with 0
.
-
The data-ride="carousel"
attribute is used to mark a carousel as animating starting at page load. It cannot be used in combination with (redundant and unnecessary) explicit JavaScript initialization of the same carousel.
-
-
Via JavaScript
-
Call carousel manually with:
-{% highlight js %}
-$('.carousel').carousel()
-{% endhighlight %}
-
-
Options
-
Options can be passed via data attributes or JavaScript. For data attributes, append the option name to data-
, as in data-interval=""
.
-
-
-
-
- Name |
- type |
- default |
- description |
-
-
-
-
- interval |
- number |
- 5000 |
- The amount of time to delay between automatically cycling an item. If false, carousel will not automatically cycle. |
-
-
- pause |
- string | null |
- "hover" |
- If set to "hover" , pauses the cycling of the carousel on mouseenter and resumes the cycling of the carousel on mouseleave . If set to null , hovering over the carousel won't pause it. |
-
-
- wrap |
- boolean |
- true |
- Whether the carousel should cycle continuously or have hard stops. |
-
-
- keyboard |
- boolean |
- true |
- Whether the carousel should react to keyboard events. |
-
-
-
-
-
-
Methods
-
-
.carousel(options)
-
Initializes the carousel with an optional options object
and starts cycling through items.
-{% highlight js %}
-$('.carousel').carousel({
- interval: 2000
-})
-{% endhighlight %}
-
-
.carousel('cycle')
-
Cycles through the carousel items from left to right.
-
-
.carousel('pause')
-
Stops the carousel from cycling through items.
-
-
-
.carousel(number)
-
Cycles the carousel to a particular frame (0 based, similar to an array).
-
-
.carousel('prev')
-
Cycles to the previous item.
-
-
.carousel('next')
-
Cycles to the next item.
-
-
Events
-
Bootstrap's carousel class exposes two events for hooking into carousel functionality.
-
Both events have the following additional properties:
-
- direction
: The direction in which the carousel is sliding (either "left"
or "right"
).
- relatedTarget
: The DOM element that is being slid into place as the active item.
-
-
All carousel events are fired at the carousel itself (i.e. at the <div class="carousel">
).
-
-
-
-
- Event Type |
- Description |
-
-
-
-
- slide.bs.carousel |
- This event fires immediately when the slide instance method is invoked. |
-
-
- slid.bs.carousel |
- This event is fired when the carousel has completed its slide transition. |
-
-
-
-
-{% highlight js %}
-$('#myCarousel').on('slide.bs.carousel', function () {
- // do something…
-})
-{% endhighlight %}
-
diff --git a/vendor/bootstrap/docs/_includes/js/collapse.html b/vendor/bootstrap/docs/_includes/js/collapse.html
deleted file mode 100644
index 686705d1e..000000000
--- a/vendor/bootstrap/docs/_includes/js/collapse.html
+++ /dev/null
@@ -1,277 +0,0 @@
-
-
-
-
Flexible plugin that utilizes a handful of classes for easy toggle behavior.
-
-
-
Plugin dependency
-
Collapse requires the transitions plugin to be included in your version of Bootstrap.
-
-
-
Example
-
Click the buttons below to show and hide another element via class changes:
-
- .collapse
hides content
- .collapsing
is applied during transitions
- .collapse.in
shows content
-
-
You can use a link with the href
attribute, or a button with the data-target
attribute. In both cases, the data-toggle="collapse"
is required.
-
-
-
-
- Link with href
-
-
-
-
-
- Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident.
-
-
-
-{% highlight html %}
-
- Link with href
-
-
-
-{% endhighlight %}
-
-
Accordion example
-
Extend the default collapse behavior to create an accordion with the panel component.
-
-
-
-
-
-
-
- Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS.
-
-
-
-
-
-
-
- Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS.
-
-
-
-
-
-
-
- Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS.
-
-
-
-
-
-{% highlight html %}
-
-
-
-
-
- Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS.
-
-
-
-
-
-
-
- Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS.
-
-
-
-
-
-
-
- Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS.
-
-
-
-
-{% endhighlight %}
-
-
It's also possible to swap out .panel-body
s with .list-group
s.
-
-
-
-
-
-
- - Bootply
- - One itmus ac facilin
- - Second eros
-
-
-
-
-
-
-
-
Make expand/collapse controls accessible
-
Be sure to add aria-expanded
to the control element. This attribute explicitly defines the current state of the collapsible element to screen readers and similar assistive technologies. If the collapsible element is closed by default, it should have a value of aria-expanded="false"
. If you've set the collapsible element to be open by default using the in
class, set aria-expanded="true"
on the control instead. The plugin will automatically toggle this attribute based on whether or not the collapsible element has been opened or closed.
-
Additionally, if your control element is targeting a single collapsible element – i.e. the data-target
attribute is pointing to an id
selector – you may add an additional aria-controls
attribute to the control element, containing the id
of the collapsible element. Modern screen readers and similar assistive technologies make use of this attribute to provide users with additional shortcuts to navigate directly to the collapsible element itself.
-
-
-
Usage
-
The collapse plugin utilizes a few classes to handle the heavy lifting:
-
- .collapse
hides the content
- .collapse.in
shows the content
- .collapsing
is added when the transition starts, and removed when it finishes
-
-
These classes can be found in component-animations.less
.
-
-
Via data attributes
-
Just add data-toggle="collapse"
and a data-target
to the element to automatically assign control of a collapsible element. The data-target
attribute accepts a CSS selector to apply the collapse to. Be sure to add the class collapse
to the collapsible element. If you'd like it to default open, add the additional class in
.
-
To add accordion-like group management to a collapsible control, add the data attribute data-parent="#selector"
. Refer to the demo to see this in action.
-
-
Via JavaScript
-
Enable manually with:
-{% highlight js %}
-$('.collapse').collapse()
-{% endhighlight %}
-
-
Options
-
Options can be passed via data attributes or JavaScript. For data attributes, append the option name to data-
, as in data-parent=""
.
-
-
-
-
- Name |
- type |
- default |
- description |
-
-
-
-
- parent |
- selector |
- false |
- If a selector is provided, then all collapsible elements under the specified parent will be closed when this collapsible item is shown. (similar to traditional accordion behavior - this is dependent on the panel class) |
-
-
- toggle |
- boolean |
- true |
- Toggles the collapsible element on invocation |
-
-
-
-
-
-
Methods
-
-
.collapse(options)
-
Activates your content as a collapsible element. Accepts an optional options object
.
-{% highlight js %}
-$('#myCollapsible').collapse({
- toggle: false
-})
-{% endhighlight %}
-
-
.collapse('toggle')
-
Toggles a collapsible element to shown or hidden. Returns to the caller before the collapsible element has actually been shown or hidden (i.e. before the shown.bs.collapse
or hidden.bs.collapse
event occurs).
-
-
.collapse('show')
-
Shows a collapsible element. Returns to the caller before the collapsible element has actually been shown (i.e. before the shown.bs.collapse
event occurs).
-
-
.collapse('hide')
-
Hides a collapsible element. Returns to the caller before the collapsible element has actually been hidden (i.e. before the hidden.bs.collapse
event occurs).
-
-
Events
-
Bootstrap's collapse class exposes a few events for hooking into collapse functionality.
-
-
-
-
- Event Type |
- Description |
-
-
-
-
- show.bs.collapse |
- This event fires immediately when the show instance method is called. |
-
-
- shown.bs.collapse |
- This event is fired when a collapse element has been made visible to the user (will wait for CSS transitions to complete). |
-
-
- hide.bs.collapse |
-
- This event is fired immediately when the hide method has been called.
- |
-
-
- hidden.bs.collapse |
- This event is fired when a collapse element has been hidden from the user (will wait for CSS transitions to complete). |
-
-
-
-
-{% highlight js %}
-$('#myCollapsible').on('hidden.bs.collapse', function () {
- // do something…
-})
-{% endhighlight %}
-
diff --git a/vendor/bootstrap/docs/_includes/js/dropdowns.html b/vendor/bootstrap/docs/_includes/js/dropdowns.html
deleted file mode 100644
index 7d8c50bdc..000000000
--- a/vendor/bootstrap/docs/_includes/js/dropdowns.html
+++ /dev/null
@@ -1,201 +0,0 @@
-
-
-
Modals are streamlined, but flexible, dialog prompts with the minimum required functionality and smart defaults.
-
-
-
Multiple open modals not supported
-
Be sure not to open a modal while another is still visible. Showing more than one modal at a time requires custom code.
-
-
-
Modal markup placement
-
Always try to place a modal's HTML code in a top-level position in your document to avoid other components affecting the modal's appearance and/or functionality.
-
-
-
-
Due to how HTML5 defines its semantics, the autofocus
HTML attribute has no effect in Bootstrap modals. To achieve the same effect, use some custom JavaScript:
-{% highlight js %}
-$('#myModal').on('shown.bs.modal', function () {
- $('#myInput').focus()
-})
-{% endhighlight %}
-
-
Examples
-
-
Static example
-
A rendered modal with header, body, and set of actions in the footer.
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
Live demo
-
Toggle a modal via JavaScript by clicking the button below. It will slide down and fade in from the top of the page.
-
-
-
-
-
-
-
-
Text in a modal
-
Duis mollis, est non commodo luctus, nisi erat porttitor ligula.
-
-
Popover in a modal
-
This button should trigger a popover on click.
-
-
Tooltips in a modal
-
This link and that link should have tooltips on hover.
-
-
-
-
Overflowing text to show scroll behavior
-
Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
-
Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
-
Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
-
Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
-
Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
-
Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
-
Cras mattis consectetur purus sit amet fermentum. Cras justo odio, dapibus ac facilisis in, egestas eget quam. Morbi leo risus, porta ac consectetur ac, vestibulum at eros.
-
Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Vivamus sagittis lacus vel augue laoreet rutrum faucibus dolor auctor.
-
Aenean lacinia bibendum nulla sed consectetur. Praesent commodo cursus magna, vel scelerisque nisl consectetur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
-
-
-
-
-
-
-
-
-
-
-{% highlight html %}
-
-
-
-
-
-{% endhighlight %}
-
-
-
Make modals accessible
-
Be sure to add role="dialog"
and aria-labelledby="..."
, referencing the modal title, to .modal
, and role="document"
to the .modal-dialog
itself.
-
Additionally, you may give a description of your modal dialog with aria-describedby
on .modal
.
-
-
-
-
Embedding YouTube videos
-
Embedding YouTube videos in modals requires additional JavaScript not in Bootstrap to automatically stop playback and more. See this helpful Stack Overflow post for more information.
-
-
-
Optional sizes
-
Modals have two optional sizes, available via modifier classes to be placed on a .modal-dialog
.
-
-
-
-
-{% highlight html %}
-
-
-
-
-
-
-
-
-
-{% endhighlight %}
-
-
-
-
-
-
Remove animation
-
For modals that simply appear rather than fade in to view, remove the .fade
class from your modal markup.
-{% highlight html %}
-
- ...
-
-{% endhighlight %}
-
-
Using the grid system
-
To take advantage of the Bootstrap grid system within a modal, just nest .row
s within the .modal-body
and then use the normal grid system classes.
-
-
-
-
-
-
-
-
.col-md-4
-
.col-md-4 .col-md-offset-4
-
-
-
.col-md-3 .col-md-offset-3
-
.col-md-2 .col-md-offset-4
-
-
-
.col-md-6 .col-md-offset-3
-
-
-
- Level 1: .col-sm-9
-
-
- Level 2: .col-xs-8 .col-sm-6
-
-
- Level 2: .col-xs-4 .col-sm-6
-
-
-
-
-
-
-
-
-
-
-
-
-{% highlight html %}
-
-
-
-
-
-
-
.col-md-4
-
.col-md-4 .col-md-offset-4
-
-
-
.col-md-3 .col-md-offset-3
-
.col-md-2 .col-md-offset-4
-
-
-
.col-md-6 .col-md-offset-3
-
-
-
- Level 1: .col-sm-9
-
-
- Level 2: .col-xs-8 .col-sm-6
-
-
- Level 2: .col-xs-4 .col-sm-6
-
-
-
-
-
-
-
-
-
-
-{% endhighlight %}
-
-
-
Have a bunch of buttons that all trigger the same modal, just with slightly different contents? Use event.relatedTarget
and HTML data-*
attributes (possibly via jQuery) to vary the contents of the modal depending on which button was clicked. See the Modal Events docs for details on relatedTarget
,
-
-
-
-
- ...more buttons...
-
-
-
-
-
-
-
-
-
-
-
-
-
-{% highlight html %}
-
-
-
-...more buttons...
-
-
-
-
-
-
-
-
-
-
-
-
-{% endhighlight %}
-{% highlight js %}
-$('#exampleModal').on('show.bs.modal', function (event) {
- var button = $(event.relatedTarget) // Button that triggered the modal
- var recipient = button.data('whatever') // Extract info from data-* attributes
- // If necessary, you could initiate an AJAX request here (and then do the updating in a callback).
- // Update the modal's content. We'll use jQuery here, but you could use a data binding library or other methods instead.
- var modal = $(this)
- modal.find('.modal-title').text('New message to ' + recipient)
- modal.find('.modal-body input').val(recipient)
-})
-{% endhighlight %}
-
-
Usage
-
The modal plugin toggles your hidden content on demand, via data attributes or JavaScript. It also adds .modal-open
to the <body>
to override default scrolling behavior and generates a .modal-backdrop
to provide a click area for dismissing shown modals when clicking outside the modal.
-
-
Via data attributes
-
Activate a modal without writing JavaScript. Set data-toggle="modal"
on a controller element, like a button, along with a data-target="#foo"
or href="#foo"
to target a specific modal to toggle.
-{% highlight html %}
-
-{% endhighlight %}
-
-
Via JavaScript
-
Call a modal with id myModal
with a single line of JavaScript:
- {% highlight js %}$('#myModal').modal(options){% endhighlight %}
-
-
Options
-
Options can be passed via data attributes or JavaScript. For data attributes, append the option name to data-
, as in data-backdrop=""
.
-
-
-
-
- Name |
- type |
- default |
- description |
-
-
-
-
- backdrop |
- boolean or the string 'static' |
- true |
- Includes a modal-backdrop element. Alternatively, specify static for a backdrop which doesn't close the modal on click. |
-
-
- keyboard |
- boolean |
- true |
- Closes the modal when escape key is pressed |
-
-
- show |
- boolean |
- true |
- Shows the modal when initialized. |
-
-
- remote |
- path |
- false |
-
- This option is deprecated since v3.3.0 and has been removed in v4. We recommend instead using client-side templating or a data binding framework, or calling jQuery.load yourself.
- If a remote URL is provided, content will be loaded one time via jQuery's load method and injected into the .modal-content div. If you're using the data-api, you may alternatively use the href attribute to specify the remote source. An example of this is shown below:
-{% highlight html %}
-Click me
-{% endhighlight %}
- |
-
-
-
-
-
-
Methods
-
-
.modal(options)
-
Activates your content as a modal. Accepts an optional options object
.
-{% highlight js %}
-$('#myModal').modal({
- keyboard: false
-})
-{% endhighlight %}
-
-
.modal('toggle')
-
Manually toggles a modal. Returns to the caller before the modal has actually been shown or hidden (i.e. before the shown.bs.modal
or hidden.bs.modal
event occurs).
- {% highlight js %}$('#myModal').modal('toggle'){% endhighlight %}
-
-
.modal('show')
-
Manually opens a modal. Returns to the caller before the modal has actually been shown (i.e. before the shown.bs.modal
event occurs).
- {% highlight js %}$('#myModal').modal('show'){% endhighlight %}
-
-
.modal('hide')
-
Manually hides a modal. Returns to the caller before the modal has actually been hidden (i.e. before the hidden.bs.modal
event occurs).
- {% highlight js %}$('#myModal').modal('hide'){% endhighlight %}
-
-
.modal('handleUpdate')
-
Readjusts the modal's positioning to counter a scrollbar in case one should appear, which would make the modal jump to the left.
-
Only needed when the height of the modal changes while it is open.
- {% highlight js %}$('#myModal').modal('handleUpdate'){% endhighlight %}
-
-
Events
-
Bootstrap's modal class exposes a few events for hooking into modal functionality.
-
All modal events are fired at the modal itself (i.e. at the <div class="modal">
).
-
-
-
-
- Event Type |
- Description |
-
-
-
-
- show.bs.modal |
- This event fires immediately when the show instance method is called. If caused by a click, the clicked element is available as the relatedTarget property of the event. |
-
-
- shown.bs.modal |
- This event is fired when the modal has been made visible to the user (will wait for CSS transitions to complete). If caused by a click, the clicked element is available as the relatedTarget property of the event. |
-
-
- hide.bs.modal |
- This event is fired immediately when the hide instance method has been called. |
-
-
- hidden.bs.modal |
- This event is fired when the modal has finished being hidden from the user (will wait for CSS transitions to complete). |
-
-
- loaded.bs.modal |
- This event is fired when the modal has loaded content using the remote option. |
-
-
-
-
-{% highlight js %}
-$('#myModal').on('hidden.bs.modal', function (e) {
- // do something...
-})
-{% endhighlight %}
-
diff --git a/vendor/bootstrap/docs/_includes/js/overview.html b/vendor/bootstrap/docs/_includes/js/overview.html
deleted file mode 100644
index 19adc16fd..000000000
--- a/vendor/bootstrap/docs/_includes/js/overview.html
+++ /dev/null
@@ -1,86 +0,0 @@
-
-
-
-
Individual or compiled
-
Plugins can be included individually (using Bootstrap's individual *.js
files), or all at once (using bootstrap.js
or the minified bootstrap.min.js
).
-
-
-
Using the compiled JavaScript
-
Both bootstrap.js
and bootstrap.min.js
contain all plugins in a single file. Include only one.
-
-
-
-
Plugin dependencies
-
Some plugins and CSS components depend on other plugins. If you include plugins individually, make sure to check for these dependencies in the docs. Also note that all plugins depend on jQuery (this means jQuery must be included before the plugin files). Consult our bower.json
to see which versions of jQuery are supported.
-
-
-
Data attributes
-
You can use all Bootstrap plugins purely through the markup API without writing a single line of JavaScript. This is Bootstrap's first-class API and should be your first consideration when using a plugin.
-
-
That said, in some situations it may be desirable to turn this functionality off. Therefore, we also provide the ability to disable the data attribute API by unbinding all events on the document namespaced with data-api
. This looks like this:
-{% highlight js %}
-$(document).off('.data-api')
-{% endhighlight %}
-
-
Alternatively, to target a specific plugin, just include the plugin's name as a namespace along with the data-api namespace like this:
-{% highlight js %}
-$(document).off('.alert.data-api')
-{% endhighlight %}
-
-
-
Only one plugin per element via data attributes
-
Don't use data attributes from multiple plugins on the same element. For example, a button cannot both have a tooltip and toggle a modal. To accomplish this, use a wrapping element.
-
-
-
Programmatic API
-
We also believe you should be able to use all Bootstrap plugins purely through the JavaScript API. All public APIs are single, chainable methods, and return the collection acted upon.
-{% highlight js %}
-$('.btn.danger').button('toggle').addClass('fat')
-{% endhighlight %}
-
-
All methods should accept an optional options object, a string which targets a particular method, or nothing (which initiates a plugin with default behavior):
-{% highlight js %}
-$('#myModal').modal() // initialized with defaults
-$('#myModal').modal({ keyboard: false }) // initialized with no keyboard
-$('#myModal').modal('show') // initializes and invokes show immediately
-{% endhighlight %}
-
-
Each plugin also exposes its raw constructor on a Constructor
property: $.fn.popover.Constructor
. If you'd like to get a particular plugin instance, retrieve it directly from an element: $('[rel="popover"]').data('popover')
.
-
-
Default settings
-
You can change the default settings for a plugin by modifying the plugin's Constructor.DEFAULTS
object:
-{% highlight js %}
-$.fn.modal.Constructor.DEFAULTS.keyboard = false // changes default for the modal plugin's `keyboard` option to false
-{% endhighlight %}
-
-
No conflict
-
Sometimes it is necessary to use Bootstrap plugins with other UI frameworks. In these circumstances, namespace collisions can occasionally occur. If this happens, you may call .noConflict
on the plugin you wish to revert the value of.
-{% highlight js %}
-var bootstrapButton = $.fn.button.noConflict() // return $.fn.button to previously assigned value
-$.fn.bootstrapBtn = bootstrapButton // give $().bootstrapBtn the Bootstrap functionality
-{% endhighlight %}
-
-
Events
-
Bootstrap provides custom events for most plugins' unique actions. Generally, these come in an infinitive and past participle form - where the infinitive (ex. show
) is triggered at the start of an event, and its past participle form (ex. shown
) is triggered on the completion of an action.
-
As of 3.0.0, all Bootstrap events are namespaced.
-
All infinitive events provide preventDefault
functionality. This provides the ability to stop the execution of an action before it starts.
-{% highlight js %}
-$('#myModal').on('show.bs.modal', function (e) {
- if (!data) return e.preventDefault() // stops modal from being shown
-})
-{% endhighlight %}
-
-
Version numbers
-
The version of each of Bootstrap's jQuery plugins can be accessed via the VERSION
property of the plugin's constructor. For example, for the tooltip plugin:
-{% highlight js %}
-$.fn.tooltip.Constructor.VERSION // => "{{ site.current_version }}"
-{% endhighlight %}
-
-
No special fallbacks when JavaScript is disabled
-
Bootstrap's plugins don't fall back particularly gracefully when JavaScript is disabled. If you care about the user experience in this case, use <noscript>
to explain the situation (and how to re-enable JavaScript) to your users, and/or add your own custom fallbacks.
-
-
-
Third-party libraries
-
Bootstrap does not officially support third-party JavaScript libraries like Prototype or jQuery UI. Despite .noConflict
and namespaced events, there may be compatibility problems that you need to fix on your own.
-
-
diff --git a/vendor/bootstrap/docs/_includes/js/popovers.html b/vendor/bootstrap/docs/_includes/js/popovers.html
deleted file mode 100644
index 637158bb9..000000000
--- a/vendor/bootstrap/docs/_includes/js/popovers.html
+++ /dev/null
@@ -1,309 +0,0 @@
-
-
-
-
Add small overlays of content, like those on the iPad, to any element for housing secondary information.
-
Popovers whose both title and content are zero-length are never displayed.
-
-
-
-
Opt-in functionality
-
For performance reasons, the Tooltip and Popover data-apis are opt-in, meaning you must initialize them yourself.
-
One way to initialize all popovers on a page would be to select them by their data-toggle
attribute:
-{% highlight js %}
-$(function () {
- $('[data-toggle="popover"]').popover()
-})
-{% endhighlight %}
-
-
-
Popovers in button groups, input groups, and tables require special setting
-
When using popovers on elements within a .btn-group
or an .input-group
, or on table-related elements (<td>
, <th>
, <tr>
, <thead>
, <tbody>
, <tfoot>
), you'll have to specify the option container: 'body'
(documented below) to avoid unwanted side effects (such as the element growing wider and/or losing its rounded corners when the popover is triggered).
-
-
-
Don't try to show popovers on hidden elements
-
Invoking $(...).popover('show')
when the target element is display: none;
will cause the popover to be incorrectly positioned.
-
-
-
Popovers on disabled elements require wrapper elements
-
To add a popover to a disabled
or .disabled
element, put the element inside of a <div>
and apply the popover to that <div>
instead.
-
-
-
Multiple-line links
-
Sometimes you want to add a popover to a hyperlink that wraps multiple lines. The default behavior of the popover plugin is to center it horizontally and vertically. Add white-space: nowrap;
to your anchors to avoid this.
-
-
-
Examples
-
Static popover
-
Four options are available: top, right, bottom, and left aligned.
-
-
-
-
Popover top
-
-
Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.
-
-
-
-
-
-
Popover right
-
-
Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.
-
-
-
-
-
-
Popover bottom
-
-
-
Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.
-
-
-
-
-
-
Popover left
-
-
Sed posuere consectetur est at lobortis. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum.
-
-
-
-
-
-
-
Live demo
-
-
-
-{% highlight html %}
-
-{% endhighlight %}
-
-
Four directions
-
-
-
-
-
-
-
-
-{% highlight html %}
-
-
-
-
-
-
-
-{% endhighlight %}
-
-
Dismiss on next click
-
Use the focus
trigger to dismiss popovers on the next click that the user makes.
-
-
Specific markup required for dismiss-on-next-click
-
For proper cross-browser and cross-platform behavior, you must use the <a>
tag, not the <button>
tag, and you also must include the role="button"
and tabindex
attributes.
-
-
-{% highlight html %}
-
Dismissible popover
-{% endhighlight %}
-
-
-
Usage
-
Enable popovers via JavaScript:
- {% highlight js %}$('#example').popover(options){% endhighlight %}
-
-
Options
-
Options can be passed via data attributes or JavaScript. For data attributes, append the option name to data-
, as in data-animation=""
.
-
-
-
-
- Name |
- Type |
- Default |
- Description |
-
-
-
-
- animation |
- boolean |
- true |
- Apply a CSS fade transition to the popover |
-
-
- container |
- string | false |
- false |
-
- Appends the popover to a specific element. Example: container: 'body' . This option is particularly useful in that it allows you to position the popover in the flow of the document near the triggering element - which will prevent the popover from floating away from the triggering element during a window resize.
- |
-
-
- content |
- string | function |
- '' |
-
- Default content value if data-content attribute isn't present.
- If a function is given, it will be called with its this reference set to the element that the popover is attached to.
- |
-
-
- delay |
- number | object |
- 0 |
-
- Delay showing and hiding the popover (ms) - does not apply to manual trigger type
- If a number is supplied, delay is applied to both hide/show
- Object structure is: delay: { "show": 500, "hide": 100 }
- |
-
-
- html |
- boolean |
- false |
- Insert HTML into the popover. If false, jQuery's text method will be used to insert content into the DOM. Use text if you're worried about XSS attacks. |
-
-
- placement |
- string | function |
- 'right' |
-
- How to position the popover - top | bottom | left | right | auto. When "auto" is specified, it will dynamically reorient the popover. For example, if placement is "auto left", the popover will display to the left when possible, otherwise it will display right.
- When a function is used to determine the placement, it is called with the popover DOM node as its first argument and the triggering element DOM node as its second. The this context is set to the popover instance.
- |
-
-
- selector |
- string |
- false |
- If a selector is provided, popover objects will be delegated to the specified targets. In practice, this is used to enable dynamic HTML content to have popovers added. See this and an informative example. |
-
-
- template |
- string |
- '<div class="popover" role="tooltip"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>' |
-
- Base HTML to use when creating the popover.
- The popover's title will be injected into the .popover-title .
- The popover's content will be injected into the .popover-content .
- .arrow will become the popover's arrow.
- The outermost wrapper element should have the .popover class.
- |
-
-
- title |
- string | function |
- '' |
-
- Default title value if title attribute isn't present.
- If a function is given, it will be called with its this reference set to the element that the popover is attached to.
- |
-
-
- trigger |
- string |
- 'click' |
- How popover is triggered - click | hover | focus | manual. You may pass multiple triggers; separate them with a space. manual cannot be combined with any other trigger. |
-
-
- viewport |
- string | object | function |
- { selector: 'body', padding: 0 } |
-
- Keeps the popover within the bounds of this element. Example: viewport: '#viewport' or { "selector": "#viewport", "padding": 0 }
- If a function is given, it is called with the triggering element DOM node as its only argument. The this context is set to the popover instance.
- |
-
-
-
-
-
-
Data attributes for individual popovers
-
Options for individual popovers can alternatively be specified through the use of data attributes, as explained above.
-
-
-
Methods
-
$().popover(options)
-
Initializes popovers for an element collection.
-
-
.popover('show')
-
Reveals an element's popover. Returns to the caller before the popover has actually been shown (i.e. before the shown.bs.popover
event occurs). This is considered a "manual" triggering of the popover. Popovers whose both title and content are zero-length are never displayed.
- {% highlight js %}$('#element').popover('show'){% endhighlight %}
-
-
.popover('hide')
-
Hides an element's popover. Returns to the caller before the popover has actually been hidden (i.e. before the hidden.bs.popover
event occurs). This is considered a "manual" triggering of the popover.
- {% highlight js %}$('#element').popover('hide'){% endhighlight %}
-
-
.popover('toggle')
-
Toggles an element's popover. Returns to the caller before the popover has actually been shown or hidden (i.e. before the shown.bs.popover
or hidden.bs.popover
event occurs). This is considered a "manual" triggering of the popover.
- {% highlight js %}$('#element').popover('toggle'){% endhighlight %}
-
-
.popover('destroy')
-
Hides and destroys an element's popover. Popovers that use delegation (which are created using the selector
option) cannot be individually destroyed on descendant trigger elements.
- {% highlight js %}$('#element').popover('destroy'){% endhighlight %}
-
-
Events
-
-
-
-
- Event Type |
- Description |
-
-
-
-
- show.bs.popover |
- This event fires immediately when the show instance method is called. |
-
-
- shown.bs.popover |
- This event is fired when the popover has been made visible to the user (will wait for CSS transitions to complete). |
-
-
- hide.bs.popover |
- This event is fired immediately when the hide instance method has been called. |
-
-
- hidden.bs.popover |
- This event is fired when the popover has finished being hidden from the user (will wait for CSS transitions to complete). |
-
-
- inserted.bs.popover |
- This event is fired after the show.bs.popover event when the popover template has been added to the DOM. |
-
-
-
-
-{% highlight js %}
-$('#myPopover').on('hidden.bs.popover', function () {
- // do something…
-})
-{% endhighlight %}
-
diff --git a/vendor/bootstrap/docs/_includes/js/scrollspy.html b/vendor/bootstrap/docs/_includes/js/scrollspy.html
deleted file mode 100644
index 186a48fb1..000000000
--- a/vendor/bootstrap/docs/_includes/js/scrollspy.html
+++ /dev/null
@@ -1,151 +0,0 @@
-
-
-
Inspired by the excellent jQuery.tipsy plugin written by Jason Frame; Tooltips are an updated version, which don't rely on images, use CSS3 for animations, and data-attributes for local title storage.
-
Tooltips with zero-length titles are never displayed.
-
-
-
Hover over the links below to see tooltips:
-
-
-
Static tooltip
-
Four options are available: top, right, bottom, and left aligned.
-
-
-
Four directions
-
-{% highlight html %}
-
-
-
-
-
-
-
-{% endhighlight %}
-
-
-
-
-
The tooltip plugin generates content and markup on demand, and by default places tooltips after their trigger element.
-
Trigger the tooltip via JavaScript:
-{% highlight js %}
-$('#example').tooltip(options)
-{% endhighlight %}
-
-
Markup
-
The required markup for a tooltip is only a data
attribute and title
on the HTML element you wish to have a tooltip. The generated markup of a tooltip is rather simple, though it does require a position (by default, set to top
by the plugin).
-
-{% highlight html %}
-
-
Hover over me
-
-
-
-{% endhighlight %}
-
-
-
-
-
-
-
-
-
Options can be passed via data attributes or JavaScript. For data attributes, append the option name to data-
, as in data-animation=""
.
-
-
-
-
- Name |
- Type |
- Default |
- Description |
-
-
-
-
- animation |
- boolean |
- true |
- Apply a CSS fade transition to the tooltip |
-
-
- container |
- string | false |
- false |
-
- Appends the tooltip to a specific element. Example: container: 'body' . This option is particularly useful in that it allows you to position the tooltip in the flow of the document near the triggering element - which will prevent the tooltip from floating away from the triggering element during a window resize.
- |
-
-
- delay |
- number | object |
- 0 |
-
- Delay showing and hiding the tooltip (ms) - does not apply to manual trigger type
- If a number is supplied, delay is applied to both hide/show
- Object structure is: delay: { "show": 500, "hide": 100 }
- |
-
-
- html |
- boolean |
- false |
- Insert HTML into the tooltip. If false, jQuery's text method will be used to insert content into the DOM. Use text if you're worried about XSS attacks. |
-
-
- placement |
- string | function |
- 'top' |
-
- How to position the tooltip - top | bottom | left | right | auto. When "auto" is specified, it will dynamically reorient the tooltip. For example, if placement is "auto left", the tooltip will display to the left when possible, otherwise it will display right.
- When a function is used to determine the placement, it is called with the tooltip DOM node as its first argument and the triggering element DOM node as its second. The this context is set to the tooltip instance.
- |
-
-
- selector |
- string |
- false |
- If a selector is provided, tooltip objects will be delegated to the specified targets. In practice, this is used to enable dynamic HTML content to have tooltips added. See this and an informative example. |
-
-
- template |
- string |
- '<div class="tooltip" role="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>' |
-
- Base HTML to use when creating the tooltip.
- The tooltip's title will be injected into the .tooltip-inner .
- .tooltip-arrow will become the tooltip's arrow.
- The outermost wrapper element should have the .tooltip class.
- |
-
-
- title |
- string | function |
- '' |
-
- Default title value if title attribute isn't present.
- If a function is given, it will be called with its this reference set to the element that the tooltip is attached to.
- |
-
-
- trigger |
- string |
- 'hover focus' |
- How tooltip is triggered - click | hover | focus | manual. You may pass multiple triggers; separate them with a space. manual cannot be combined with any other trigger. |
-
-
- viewport |
- string | object | function |
- { selector: 'body', padding: 0 } |
-
- Keeps the tooltip within the bounds of this element. Example: viewport: '#viewport' or { "selector": "#viewport", "padding": 0 }
- If a function is given, it is called with the triggering element DOM node as its only argument. The this context is set to the tooltip instance.
- |
-
-
-
-
-
-
-
-
-
$().tooltip(options)
-
Attaches a tooltip handler to an element collection.
-
-
.tooltip('show')
-
Reveals an element's tooltip. Returns to the caller before the tooltip has actually been shown (i.e. before the shown.bs.tooltip
event occurs). This is considered a "manual" triggering of the tooltip. Tooltips with zero-length titles are never displayed.
- {% highlight js %}$('#element').tooltip('show'){% endhighlight %}
-
-
.tooltip('hide')
-
Hides an element's tooltip. Returns to the caller before the tooltip has actually been hidden (i.e. before the hidden.bs.tooltip
event occurs). This is considered a "manual" triggering of the tooltip.
- {% highlight js %}$('#element').tooltip('hide'){% endhighlight %}
-
-
.tooltip('toggle')
-
Toggles an element's tooltip. Returns to the caller before the tooltip has actually been shown or hidden (i.e. before the shown.bs.tooltip
or hidden.bs.tooltip
event occurs). This is considered a "manual" triggering of the tooltip.
- {% highlight js %}$('#element').tooltip('toggle'){% endhighlight %}
-
-
.tooltip('destroy')
-
Hides and destroys an element's tooltip. Tooltips that use delegation (which are created using the selector
option) cannot be individually destroyed on descendant trigger elements.
- {% highlight js %}$('#element').tooltip('destroy'){% endhighlight %}
-
-
-
-
-
-
- Event Type |
- Description |
-
-
-
-
- show.bs.tooltip |
- This event fires immediately when the show instance method is called. |
-
-
- shown.bs.tooltip |
- This event is fired when the tooltip has been made visible to the user (will wait for CSS transitions to complete). |
-
-
- hide.bs.tooltip |
- This event is fired immediately when the hide instance method has been called. |
-
-
- hidden.bs.tooltip |
- This event is fired when the tooltip has finished being hidden from the user (will wait for CSS transitions to complete). |
-
-
- inserted.bs.tooltip |
- This event is fired after the show.bs.tooltip event when the tooltip template has been added to the DOM. |
-
-
-
-
-{% highlight js %}
-$('#myTooltip').on('hidden.bs.tooltip', function () {
- // do something…
-})
-{% endhighlight %}
-
diff --git a/vendor/bootstrap/docs/_includes/js/transitions.html b/vendor/bootstrap/docs/_includes/js/transitions.html
deleted file mode 100644
index 08d9c3ab8..000000000
--- a/vendor/bootstrap/docs/_includes/js/transitions.html
+++ /dev/null
@@ -1,15 +0,0 @@
-