mirror of
https://github.com/twbs/bootstrap.git
synced 2024-11-29 11:24:18 +01:00
268 lines
5.5 KiB
Plaintext
268 lines
5.5 KiB
Plaintext
//
|
|
// Tables
|
|
// --------------------------------------------------
|
|
|
|
|
|
table {
|
|
max-width: 100%;
|
|
background-color: @table-bg;
|
|
}
|
|
th {
|
|
text-align: left;
|
|
}
|
|
|
|
|
|
// BASELINE STYLES
|
|
// ---------------
|
|
|
|
.table {
|
|
width: 100%;
|
|
margin-bottom: @line-height-computed;
|
|
// Cells
|
|
thead,
|
|
tbody,
|
|
tfoot {
|
|
> tr {
|
|
> th,
|
|
> td {
|
|
padding: @table-cell-padding;
|
|
line-height: @line-height-base;
|
|
vertical-align: top;
|
|
border-top: 1px solid @table-border-color;
|
|
}
|
|
}
|
|
}
|
|
// Bottom align for column headings
|
|
thead > tr > th {
|
|
vertical-align: bottom;
|
|
}
|
|
// Remove top border from thead by default
|
|
caption + thead,
|
|
colgroup + thead,
|
|
thead:first-child {
|
|
tr:first-child {
|
|
th, td {
|
|
border-top: 0;
|
|
}
|
|
}
|
|
}
|
|
// Account for multiple tbody instances
|
|
tbody + tbody {
|
|
border-top: 2px solid @table-border-color;
|
|
}
|
|
|
|
// Nesting
|
|
.table {
|
|
background-color: @body-bg;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// CONDENSED TABLE W/ HALF PADDING
|
|
// -------------------------------
|
|
|
|
.table-condensed {
|
|
thead,
|
|
tbody,
|
|
tfoot {
|
|
> tr {
|
|
> th,
|
|
> td {
|
|
padding: @table-condensed-cell-padding;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// BORDERED VERSION
|
|
// ----------------
|
|
|
|
.table-bordered {
|
|
border: 1px solid @table-border-color;
|
|
border-collapse: separate; // Done so we can round those corners!
|
|
border-left: 0;
|
|
border-radius: @border-radius-base;
|
|
|
|
> thead,
|
|
> tbody,
|
|
> tfoot {
|
|
> tr {
|
|
> th,
|
|
> td {
|
|
border-left: 1px solid @table-border-color;
|
|
}
|
|
}
|
|
}
|
|
// Prevent a double border
|
|
> caption + thead > tr:first-child th,
|
|
> caption + tbody > tr:first-child th,
|
|
> caption + tbody > tr:first-child td,
|
|
> colgroup + thead > tr:first-child th,
|
|
> colgroup + tbody > tr:first-child th,
|
|
> colgroup + tbody > tr:first-child td,
|
|
> thead:first-child > tr:first-child th,
|
|
> tbody:first-child > tr:first-child th,
|
|
> tbody:first-child > tr:first-child td {
|
|
border-top: 0;
|
|
}
|
|
> thead:first-child > tr:first-child > th,
|
|
> tbody:first-child > tr:first-child > td,
|
|
> tbody:first-child > tr:first-child > th {
|
|
// For first th/td in the first row in the first thead or tbody
|
|
&:first-child{
|
|
border-top-left-radius: @border-radius-base;
|
|
}
|
|
// For last th/td in the first row in the first thead or tbody
|
|
&:last-child{
|
|
border-top-right-radius: @border-radius-base;
|
|
}
|
|
}
|
|
> thead:last-child > tr:last-child > th,
|
|
> tbody:last-child > tr:last-child > td,
|
|
> tbody:last-child > tr:last-child > th,
|
|
> tfoot:last-child > tr:last-child > td,
|
|
> tfoot:last-child > tr:last-child > th {
|
|
// For first th/td (can be either) in the last row in the last thead, tbody, and tfoot
|
|
&:first-child{
|
|
border-bottom-left-radius: @border-radius-base;
|
|
}
|
|
// For last th/td (can be either) in the last row in the last thead, tbody, and tfoot
|
|
&:last-child{
|
|
border-bottom-right-radius: @border-radius-base;
|
|
}
|
|
}
|
|
|
|
// Clear border-radius for first and last td in the last row in the last tbody for table with tfoot
|
|
> tfoot + tbody:last-child > tr:last-child > td:first-child {
|
|
border-bottom-left-radius: 0;
|
|
}
|
|
> tfoot + tbody:last-child > tr:last-child > td:last-child {
|
|
border-bottom-right-radius: 0;
|
|
}
|
|
|
|
// Special fixes to round the left border on the first td/th
|
|
> caption,
|
|
> colgroup {
|
|
+ thead > tr:first-child > th,
|
|
+ tbody > tr:first-child > td {
|
|
&:first-child {
|
|
border-top-left-radius: @border-radius-base;
|
|
}
|
|
&:last-child {
|
|
border-top-right-radius: @border-radius-base;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// ZEBRA-STRIPING
|
|
// --------------
|
|
|
|
// Default zebra-stripe styles (alternating gray and transparent backgrounds)
|
|
.table-striped {
|
|
> tbody {
|
|
> tr:nth-child(odd) {
|
|
> td,
|
|
> th {
|
|
background-color: @table-bg-accent;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// HOVER EFFECT
|
|
// ------------
|
|
|
|
// Placed here since it has to come after the potential zebra striping
|
|
.table-hover {
|
|
> tbody {
|
|
> tr:hover {
|
|
> td,
|
|
> th {
|
|
background-color: @table-bg-hover;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// TABLE CELL SIZING
|
|
// -----------------
|
|
|
|
// Reset default table behavior
|
|
table col[class^="col-"] {
|
|
float: none;
|
|
display: table-column;
|
|
}
|
|
table {
|
|
td,
|
|
th {
|
|
&[class^="col-"] {
|
|
float: none;
|
|
display: table-cell;
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// TABLE BACKGROUNDS
|
|
// -----------------
|
|
// Exact selectors below required to override .table-striped
|
|
|
|
.table > tbody > tr {
|
|
> td.active,
|
|
> th.active,
|
|
&.active > td {
|
|
background-color: @table-bg-hover;
|
|
}
|
|
> td.success,
|
|
> th.success,
|
|
&.success > td {
|
|
background-color: @state-success-bg;
|
|
border-color: @state-success-border;
|
|
}
|
|
> td.danger,
|
|
> th.danger,
|
|
&.danger > td {
|
|
background-color: @state-danger-bg;
|
|
border-color: @state-danger-border;
|
|
}
|
|
> td.warning,
|
|
> th.warning,
|
|
&.warning > td {
|
|
background-color: @state-warning-bg;
|
|
border-color: @state-warning-border;
|
|
}
|
|
}
|
|
|
|
// Hover states for .table-hover
|
|
.table-hover > tbody > tr {
|
|
> td.success:hover,
|
|
> th.success:hover,
|
|
&.success:hover > td {
|
|
background-color: darken(@state-success-bg, 5%);
|
|
border-color: darken(@state-success-border, 5%);
|
|
}
|
|
> td.danger:hover,
|
|
> th.danger:hover,
|
|
&.danger:hover > td {
|
|
background-color: darken(@state-danger-bg, 5%);
|
|
border-color: darken(@state-danger-border, 5%);
|
|
}
|
|
> td.warning:hover,
|
|
> th.warning:hover,
|
|
&.warning:hover > td {
|
|
background-color: darken(@state-warning-bg, 5%);
|
|
border-color: darken(@state-warning-border, 5%);
|
|
}
|
|
}
|