* remove the $enable-flex variable option * remove bootstrap-flex.css dist file and it's grunt task * remove the separate flex css file for docs; it's all the same now * remove flexbox docs (porting some to the main grid docs in next commit) * clean up few grid docs bits to simplify copy, start to mention flexbox * port relevant flexbox-grid.md content to grid.md - clean up mixins - update how it works section - bring over sizing and alignment sections * remove the $enable-flex from the options.md page * update lead paragraph to mention flexbox * update migration to mention loss of ie9 support * remove mention of flexbox dist file * clarify IE support * making a note * remove flexbox variant mentions from component docs - updates docs for media object, navs, list group, and cards to consolidate docs - no more need to callout flexbox variants since it's now the default * remove $enable-flex if/else from sass files * remove flex dist files * update scss lint property order to account for flex properties * linting * change to numberless classes for autosizing, wrap in highlighting div * bump gruntfile and postcss to ie10 * redo intro sections * rearrange * phew, redo hella grid docs - rearrange all the things - consolidate some bits * remove reference to flexbox mode * more border action for demo * Make some changes to the .card's in .card-deck's to ensure footers align to the bottom
23 KiB
layout | title | description | group |
---|---|---|---|
docs | Cards | Bootstrap Cards provide a flexible and extensible content container with multiple variants and options. | components |
A card is a flexible and extensible content container. It includes options for headers and footers, a wide variety of content, contextual background colors, and powerful display options.
If you're familiar with Bootstrap 3, cards replace our old panels, wells, and thumbnails. Similar functionality to those components is available as modifier classes for cards.
Contents
- Will be replaced with the ToC, excluding the "Contents" header {:toc}
Example
Cards require a small amount of markup and classes to provide you with as much control as possible. These classes and markup are flexible though and can typically be remixed and extended with ease. For example, if your card has no flush content like images, feel free to put the .card-block
class on the .card
element to consolidate your markup.
{% example html %}
Card title
Some quick example text to build on the card title and make up the bulk of the card's content.
Go somewhereContent types
Cards support a wide variety of content, including images, text, list groups, links, and more. Mix and match multiple content types to create the card you need.
{% example html %}
Card title
Some quick example text to build on the card title and make up the bulk of the card's content.
- Cras justo odio
- Dapibus ac facilisis in
- Vestibulum at eros
Lists can be added to a card by adding a list group.
{% example html %}
- Cras justo odio
- Dapibus ac facilisis in
- Vestibulum at eros
.card-img-top
places an image to the top of the card. With .card-text
, text can be added to the card. Text within .card-text
can also be styled with the standard HTML tags.
{% example html %}
Some quick example text to build on the card title and make up the bulk of the card's content.
Card titles are used by adding .card-title
to a <h*>
tag. In the same way, links are added and placed next to each other by adding .card-link
to a <a>
tag.
{% example html %}
Card title
Some quick example text to build on the card title and make up the bulk of the card's content.
Card link Another linkSubtitles are used by adding a .card-subtitle
to an <h*>
tag. If the .card-title
and the .card-subtitle
items are placed in a .card-block
item, the card title and subtitle are aligned nicely.
The multiple content types can be easily combined to create the card you need. See below for an example.
{% example html %}
Card title
Support card subtitle
Some quick example text to build on the card title and make up the bulk of the card's content.
Card link Another linkSizing
Constrain the width of cards via custom CSS, our predefined grid classes, or with custom styles using our grid mixins.
Using the grid:
{% example html %}
Special title treatment
With supporting text below as a natural lead-in to additional content.
Go somewhereSpecial title treatment
With supporting text below as a natural lead-in to additional content.
Go somewhereUsing custom widths:
{% example html %}
Special title treatment
With supporting text below as a natural lead-in to additional content.
Go somewhereText alignment
You can quickly change the text alignment of any card—in its entirety or specific parts—with our [text align classes]({{ site.baseurl }}/utilities/typography/#text-alignment).
{% example html %}
Special title treatment
With supporting text below as a natural lead-in to additional content.
Go somewhereSpecial title treatment
With supporting text below as a natural lead-in to additional content.
Go somewhereSpecial title treatment
With supporting text below as a natural lead-in to additional content.
Go somewhereHeader and footer
Add an optional header and/or footer within a card.
{% example html %}
Special title treatment
With supporting text below as a natural lead-in to additional content.
Go somewhereCard headers can be styled by adding .card-header
to <h*>
elements.
{% example html %}
Featured
Special title treatment
With supporting text below as a natural lead-in to additional content.
Go somewhere{% example html %}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.
Someone famous in Source Title
{% example html %}
Special title treatment
With supporting text below as a natural lead-in to additional content.
Go somewhereHeader nav
Use Bootstrap's nav pills or tabs within a card header.
{% example html %}
Special title treatment
With supporting text below as a natural lead-in to additional content.
Go somewhere{% example html %}
Special title treatment
With supporting text below as a natural lead-in to additional content.
Go somewhereImage caps
Similar to headers and footers, cards include top and bottom image caps.
{% example html %}
Card title
This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.
Last updated 3 mins ago
Card title
This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.
Last updated 3 mins ago
Image overlays
Turn an image into a card background and overlay your card's text. Depending on the image, you may or may not need .card-inverse
(see below).
{% example html %}
Card title
This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.
Last updated 3 mins ago
Inverted text
By default, cards use dark text and assume a light background. You can reverse that by toggling the color
of text within, as well as that of the card's subcomponents, with .card-inverse
. Then, specify a dark background-color
and border-color
to go with it.
You can also use .card-inverse
with the contextual backgrounds variants.
{% example html %}
Special title treatment
With supporting text below as a natural lead-in to additional content.
Go somewhereBackground variants
Cards include their own variant classes for quickly changing the background-color
and border-color
of a card. Darker colors require the use of .card-inverse
.
{% example html %}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.
Someone famous in Source Title
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.
Someone famous in Source Title
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.
Someone famous in Source Title
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.
Someone famous in Source Title
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.
Someone famous in Source Title
{% capture callout-include %}{% include callout-warning-color-assistive-technologies.md %}{% endcapture %} {{ callout-include | markdownify }}
Outline variants
In need of a colored card, but not the hefty background colors they bring? Replace the default modifier classes with the .card-outline-*
ones to style just the border-color
of a card.
{% example html %}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.
Someone famous in Source Title
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.
Someone famous in Source Title
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.
Someone famous in Source Title
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.
Someone famous in Source Title
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.
Someone famous in Source Title
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.
Someone famous in Source Title
Groups
Use card groups to render cards as a single, attached element with equal width and height columns. Card groups use display: flex;
to achieve their uniform sizing.
Only applies to small devices and above.
{% example html %}
Card title
This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.
Last updated 3 mins ago
Card title
This card has supporting text below as a natural lead-in to additional content.
Last updated 3 mins ago
Card title
This is a wider card with supporting text below as a natural lead-in to additional content. This card has even longer content than the first to show that equal height action.
Last updated 3 mins ago
Decks
Need a set of equal width and height cards that aren't attached to one another? Use card decks. By default, card decks require two wrapping elements: .card-deck-wrapper
and a .card-deck
. We use table styles for the sizing and the gutters on .card-deck
. The .card-deck-wrapper
is used to negative margin out the border-spacing
on the .card-deck
.
Only applies to small devices and above.
{% example html %}
Card title
This is a longer card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.
Last updated 3 mins ago
Card title
This card has supporting text below as a natural lead-in to additional content.
Last updated 3 mins ago
Card title
This is a wider card with supporting text below as a natural lead-in to additional content. This card has even longer content than the first to show that equal height action.
Last updated 3 mins ago
Columns
Cards can be organized into Masonry-like columns with just CSS by wrapping them in .card-columns
. Cards are ordered from top to bottom and left to right when wrapped in .card-columns
.
Only applies to small devices and above.
{% example html %}
Card title that wraps to a new line
This is a longer card with supporting text below as a natural lead-in to additional content. This content is a little bit longer.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.
Someone famous in Source Title
Card title
This card has supporting text below as a natural lead-in to additional content.
Last updated 3 mins ago
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat.
Someone famous in Source Title
Card title
This card has supporting text below as a natural lead-in to additional content.
Last updated 3 mins ago
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a ante.
Someone famous in Source Title
Card title
This is a wider card with supporting text below as a natural lead-in to additional content. This card has even longer content than the first to show that equal height action.
Last updated 3 mins ago
Card columns can also be extended and customized with some additional code. Shown below is an extension of the .card-columns
class using the same CSS we use—CSS columns— to generate a set of responsive tiers for changing the number of columns.
{% highlight scss %} .card-columns { @include media-breakpoint-only(lg) { column-count: 4; } @include media-breakpoint-only(xl) { column-count: 5; } } {% endhighlight %}