0
0
mirror of https://github.com/twbs/bootstrap.git synced 2025-03-15 15:29:22 +01:00

Merge pull request #8370 from cvrebert/tables-nesting

refactor tables.less to use nesting more
This commit is contained in:
Mark Otto 2013-07-03 19:39:29 -07:00
commit d483e77553
2 changed files with 66 additions and 48 deletions

View File

@ -1126,10 +1126,10 @@ th {
} }
.table caption + thead tr:first-child th, .table caption + thead tr:first-child th,
.table caption + thead tr:first-child td,
.table colgroup + thead tr:first-child th, .table colgroup + thead tr:first-child th,
.table colgroup + thead tr:first-child td,
.table thead:first-child tr:first-child th, .table thead:first-child tr:first-child th,
.table caption + thead tr:first-child td,
.table colgroup + thead tr:first-child td,
.table thead:first-child tr:first-child td { .table thead:first-child tr:first-child td {
border-top: 0; border-top: 0;
} }
@ -1212,15 +1212,15 @@ th {
} }
.table-bordered > caption + thead > tr:first-child > th:first-child, .table-bordered > caption + thead > tr:first-child > th:first-child,
.table-bordered > caption + tbody > tr:first-child > td:first-child,
.table-bordered > colgroup + thead > tr:first-child > th:first-child, .table-bordered > colgroup + thead > tr:first-child > th:first-child,
.table-bordered > caption + tbody > tr:first-child > td:first-child,
.table-bordered > colgroup + tbody > tr:first-child > td:first-child { .table-bordered > colgroup + tbody > tr:first-child > td:first-child {
border-top-left-radius: 4px; border-top-left-radius: 4px;
} }
.table-bordered > caption + thead > tr:first-child > th:last-child, .table-bordered > caption + thead > tr:first-child > th:last-child,
.table-bordered > caption + tbody > tr:first-child > td:last-child,
.table-bordered > colgroup + thead > tr:first-child > th:last-child, .table-bordered > colgroup + thead > tr:first-child > th:last-child,
.table-bordered > caption + tbody > tr:first-child > td:last-child,
.table-bordered > colgroup + tbody > tr:first-child > td:last-child { .table-bordered > colgroup + tbody > tr:first-child > td:last-child {
border-top-right-radius: 4px; border-top-right-radius: 4px;
} }

View File

@ -19,28 +19,32 @@ th {
width: 100%; width: 100%;
margin-bottom: @line-height-computed; margin-bottom: @line-height-computed;
// Cells // Cells
thead > tr > th, thead,
tbody > tr > th, tbody {
thead > tr > td, > tr {
tbody > tr > td { > th,
> td {
padding: 8px; padding: 8px;
line-height: @line-height-base; line-height: @line-height-base;
vertical-align: top; vertical-align: top;
border-top: 1px solid @table-border-color; border-top: 1px solid @table-border-color;
} }
}
}
// Bottom align for column headings // Bottom align for column headings
thead > tr > th { thead > tr > th {
vertical-align: bottom; vertical-align: bottom;
} }
// Remove top border from thead by default // Remove top border from thead by default
caption + thead tr:first-child th, caption + thead,
caption + thead tr:first-child td, colgroup + thead,
colgroup + thead tr:first-child th, thead:first-child {
colgroup + thead tr:first-child td, tr:first-child {
thead:first-child tr:first-child th, th, td {
thead:first-child tr:first-child td {
border-top: 0; border-top: 0;
} }
}
}
// Account for multiple tbody instances // Account for multiple tbody instances
tbody + tbody { tbody + tbody {
border-top: 2px solid @table-border-color; border-top: 2px solid @table-border-color;
@ -58,12 +62,15 @@ th {
// ------------------------------- // -------------------------------
.table-condensed { .table-condensed {
thead > tr > th, thead,
tbody > tr > th, tbody {
thead > tr > td, > tr {
tbody > tr > td { > th,
> td {
padding: 4px 5px; padding: 4px 5px;
} }
}
}
} }
@ -77,12 +84,15 @@ th {
border-left: 0; border-left: 0;
border-radius: @border-radius-base; border-radius: @border-radius-base;
> thead > tr > th, > thead,
> tbody > tr > th, > tbody {
> thead > tr > td, > tr {
> tbody > tr > td { > th,
> td {
border-left: 1px solid @table-border-color; border-left: 1px solid @table-border-color;
} }
}
}
// Prevent a double border // Prevent a double border
> caption + thead > tr:first-child th, > caption + thead > tr:first-child th,
> caption + tbody > tr:first-child th, > caption + tbody > tr:first-child th,
@ -131,17 +141,18 @@ th {
} }
// Special fixes to round the left border on the first td/th // Special fixes to round the left border on the first td/th
> caption + thead > tr:first-child > th, > caption,
> caption + tbody > tr:first-child > td, > colgroup {
> colgroup + thead > tr:first-child > th, + thead > tr:first-child > th,
> colgroup + tbody > tr:first-child > td { + tbody > tr:first-child > td {
&:first-child{ &:first-child {
border-top-left-radius: @border-radius-base; border-top-left-radius: @border-radius-base;
} }
&:last-child{ &:last-child {
border-top-right-radius: @border-radius-base; border-top-right-radius: @border-radius-base;
} }
} }
}
} }
@ -152,11 +163,13 @@ th {
// Default zebra-stripe styles (alternating gray and transparent backgrounds) // Default zebra-stripe styles (alternating gray and transparent backgrounds)
.table-striped { .table-striped {
> tbody { > tbody {
> tr:nth-child(odd) > td, > tr:nth-child(odd) {
> tr:nth-child(odd) > th { > td,
> th {
background-color: @table-bg-accent; background-color: @table-bg-accent;
} }
} }
}
} }
@ -167,11 +180,13 @@ th {
// Placed here since it has to come after the potential zebra striping // Placed here since it has to come after the potential zebra striping
.table-hover { .table-hover {
> tbody { > tbody {
> tr:hover > td, > tr:hover {
> tr:hover > th { > td,
> th {
background-color: @table-bg-hover; background-color: @table-bg-hover;
} }
} }
}
} }
@ -184,10 +199,13 @@ table col[class^="col-"] {
float: none; float: none;
display: table-column; display: table-column;
} }
table td[class^="col-"], table {
table th[class^="col-"] { td, th {
&[class^="col-"] {
float: none; float: none;
display: table-cell; display: table-cell;
}
}
} }