@import "../variables/variables"; @import "ui-variables"; // // Tables // -------------------------------------------------- //## Customizes the `.table` component with basic values, each used across all table variations. @table-cell-padding: 8px; //** Padding for ``s and ``s. @table-condensed-cell-padding: 5px; //** Padding for cells in `.table-condensed`. @table-bg: transparent; //** Default background color used for all tables. @table-bg-accent: #f9f9f9; //** Background color used for `.table-striped`. @table-bg-hover: #f5f5f5; //** Background color used for `.table-hover`. @table-bg-active: @table-bg-hover; @table-border-color: #ddd; //** Border color for table and cell borders. // Variant mixin .table-row-variant(@state; @background) { // Exact selectors below required to override `.table-striped` and prevent // inheritance to nested tables. .table > thead > tr, .table > tbody > tr, .table > tfoot > tr { > td.@{state}, > th.@{state}, &.@{state} > td, &.@{state} > th { background-color: @background; } } // Hover states for `.table-hover` // Note: this is not available for cells or rows within `thead` or `tfoot`. .table-hover > tbody > tr { > td.@{state}:hover, > th.@{state}:hover, &.@{state}:hover > td, &:hover > .@{state}, &.@{state}:hover > th { background-color: darken(@background, 5%); } } } // Global overrides table { background-color: @table-bg; } caption { padding-top: @table-cell-padding; padding-bottom: @table-cell-padding; color: @text-muted; text-align: left; } th { text-align: left; } // Baseline styles .table { width: 100%; max-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; border-bottom: 2px solid @table-border-color; } // 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 // // Add borders all around the table and between all the columns. .table-bordered { border: 1px solid @table-border-color; > thead, > tbody, > tfoot { > tr { > th, > td { border: 1px solid @table-border-color; } } } > thead > tr { > th, > td { border-bottom-width: 2px; } } } // Zebra-striping // // Default zebra-stripe styles (alternating gray and transparent backgrounds) .table-striped { > tbody > tr:nth-of-type(odd) { background-color: @table-bg-accent; } } // Hover effect // // Placed here since it has to come after the potential zebra striping .table-hover { > tbody > tr:hover { background-color: @table-bg-hover; } } // Table cell sizing // // Reset default table behavior table col[class*="col-"] { position: static; // Prevent border hiding in Firefox and IE9-11 (see https://github.com/twbs/bootstrap/issues/11623) float: none; display: table-column; } table { td, th { &[class*="col-"] { position: static; // Prevent border hiding in Firefox and IE9-11 (see https://github.com/twbs/bootstrap/issues/11623) float: none; display: table-cell; } } } // Table backgrounds // // Exact selectors below required to override `.table-striped` and prevent // inheritance to nested tables. // Generate the contextual variants .table-row-variant(active; @table-bg-active); .table-row-variant(success; @state-success-bg); .table-row-variant(info; @state-info-bg); .table-row-variant(warning; @state-warning-bg); .table-row-variant(danger; @state-danger-bg);