0
0
mirror of https://github.com/twbs/bootstrap.git synced 2024-12-04 16:24:22 +01:00
Bootstrap/docs/4.0/content/tables.md
2017-06-28 09:36:27 -07:00

15 KiB

layout title description group toc
docs Tables Documentation and examples for opt-in styling of tables (given their prevelant use in JavaScript plugins) with Bootstrap. content true

Examples

Due to the widespread use of tables across third-party widgets like calendars and date pickers, we've designed our tables to be opt-in. Just add the base class .table to any <table>, then extend with custom styles or our various included modifier classes.

Using the most basic table markup, here's how .table-based tables look in Bootstrap. All table styles are inherited in Bootstrap 4, meaning any nested tables will be styled in the same manner as the parent.

{% example html %}

# First Name Last Name Username
1 Mark Otto @mdo
2 Jacob Thornton @fat
3 Larry the Bird @twitter
{% endexample %}

You can also invert the colors—with light text on dark backgrounds—with .table-inverse.

{% example html %}

# First Name Last Name Username
1 Mark Otto @mdo
2 Jacob Thornton @fat
3 Larry the Bird @twitter
{% endexample %}

Table head options

Similar to default and inverse tables, use one of two modifier classes to make <thead>s appear light or dark gray.

{% example html %}

# First Name Last Name Username
1 Mark Otto @mdo
2 Jacob Thornton @fat
3 Larry the Bird @twitter
# First Name Last Name Username
1 Mark Otto @mdo
2 Jacob Thornton @fat
3 Larry the Bird @twitter
{% endexample %}

Striped rows

Use .table-striped to add zebra-striping to any table row within the <tbody>.

{% example html %}

# First Name Last Name Username
1 Mark Otto @mdo
2 Jacob Thornton @fat
3 Larry the Bird @twitter
{% endexample %}

{% example html %}

# First Name Last Name Username
1 Mark Otto @mdo
2 Jacob Thornton @fat
3 Larry the Bird @twitter
{% endexample %}

Bordered table

Add .table-bordered for borders on all sides of the table and cells.

{% example html %}

# First Name Last Name Username
1 Mark Otto @mdo
2 Mark Otto @TwBootstrap
3 Jacob Thornton @fat
4 Larry the Bird @twitter
{% endexample %}

{% example html %}

# First Name Last Name Username
1 Mark Otto @mdo
2 Mark Otto @TwBootstrap
3 Jacob Thornton @fat
4 Larry the Bird @twitter
{% endexample %}

Hoverable rows

Add .table-hover to enable a hover state on table rows within a <tbody>.

{% example html %}

# First Name Last Name Username
1 Mark Otto @mdo
2 Jacob Thornton @fat
3 Larry the Bird @twitter
{% endexample %}

{% example html %}

# First Name Last Name Username
1 Mark Otto @mdo
2 Jacob Thornton @fat
3 Larry the Bird @twitter
{% endexample %}

Small table

Add .table-sm to make tables more compact by cutting cell padding in half.

{% example html %}

# First Name Last Name Username
1 Mark Otto @mdo
2 Jacob Thornton @fat
3 Larry the Bird @twitter
{% endexample %}

{% example html %}

# First Name Last Name Username
1 Mark Otto @mdo
2 Jacob Thornton @fat
3 Larry the Bird @twitter
{% endexample %}

Contextual classes

Use contextual classes to color table rows or individual cells.

  {% for color in site.data.theme-colors %}
  <tr class="table-{{ color.name }}">
    <th scope="row">{{ color.name | capitalize }}</th>
    <td>Column content</td>
    <td>Column content</td>
    <td>Column content</td>
  </tr>{% endfor %}
</tbody>
Type Column heading Column heading Column heading
Active Column content Column content Column content
Default Column content Column content Column content

{% highlight html %}

... {% for color in site.data.theme-colors %} ...{% endfor %} ... {% for color in site.data.theme-colors %} ...{% endfor %} {% endhighlight %}

Regular table background variants are not available with the inverse table, however, you may use [text or background utilities]({{ site.baseurl }}/docs/{{ site.docs_version }}/utilities/colors/) to achieve similar styles.

# Column heading Column heading Column heading
1 Column content Column content Column content
2 Column content Column content Column content
3 Column content Column content Column content
4 Column content Column content Column content
5 Column content Column content Column content
6 Column content Column content Column content
7 Column content Column content Column content
8 Column content Column content Column content
9 Column content Column content Column content

{% highlight html %}

... ... ... ... ... ... ... ... ... ... {% endhighlight %}

{% capture callout-include %}{% include callout-warning-color-assistive-technologies.md %}{% endcapture %} {{ callout-include | markdownify }}

Responsive tables

Create responsive tables by adding .table-responsive to any .table to make them scroll horizontally on small devices (under 768px). When viewing on anything larger than 768px wide, you will not see any difference in these tables.

{% callout warning %}

Vertical clipping/truncation

Responsive tables make use of overflow-y: hidden, which clips off any content that goes beyond the bottom or top edges of the table. In particular, this can clip off dropdown menus and other third-party widgets. {% endcallout %}

# Table heading Table heading Table heading Table heading Table heading Table heading
1 Table cell Table cell Table cell Table cell Table cell Table cell
2 Table cell Table cell Table cell Table cell Table cell Table cell
3 Table cell Table cell Table cell Table cell Table cell Table cell
# Table heading Table heading Table heading Table heading Table heading Table heading
1 Table cell Table cell Table cell Table cell Table cell Table cell
2 Table cell Table cell Table cell Table cell Table cell Table cell
3 Table cell Table cell Table cell Table cell Table cell Table cell

{% highlight html %}

...
{% endhighlight %}