//参考 bootstrap table 
$body-bg: #fff !default;
$font-size-base: 14px !default;
$line-height-base: 1.428571429 !default; // 20/14

$text-muted: #777 !default; // #777
$screen-xs-max: 767px !default;
//== Tables
//
//## Customizes the `.table` component with basic values, each used across all table variations.

//** Padding for `<th>`s and `<td>`s.
$table-cell-padding: 8px !default;
//** Padding for cells in `.table-condensed`.
$table-condensed-cell-padding: 5px !default;

//** Default background color used for all tables.
$table-bg: transparent !default;
//** Background color used for `.table-striped`.
$table-bg-accent: #f9f9f9 !default;
//** Background color used for `.table-hover`.
$table-bg-hover: #f5f5f5 !default;
$table-bg-active: $table-bg-hover !default;

//** Border color for table and cell borders.
$table-border-color: #ddd !default;

table {
  background-color: $table-bg;
  border-spacing: 0;
  border-collapse: collapse;
}

caption {
  padding-top: $table-cell-padding;
  padding-bottom: $table-cell-padding;
  color: $text-muted;
  text-align: left;
}

th,
td {
  text-align: left;
  font-size: 14px;
}

// Baseline styles

.table {
  width: 100%;
  max-width: 100%;

  // Cells
  >thead,
  >tbody,
  >tfoot {
    >tr {

      >th,
      >td {
        padding: $table-cell-padding;
        line-height: $line-height-base;
        vertical-align: top;
      }
    }
  }

  // Bottom align for column headings
  >thead>tr>th {
    vertical-align: bottom;
    border-bottom: 1px solid $table-border-color;
    background-color: #eee;
  }

  // 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: 1px;
    }
  }
}

// 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;
    }
  }
}

// Responsive tables
//
// Wrap your tables in `.table-responsive` and we'll make them mobile friendly
// by enabling horizontal scrolling. Only applies <768px. Everything above that
// will display normally.

.table-responsive {
  overflow-x: auto;
  min-height: 0.01%; // Workaround for IE9 bug (see https://github.com/twbs/bootstrap/issues/14837)

  @media screen and (max-width: $screen-xs-max) {
    width: 100%;
    overflow-y: hidden;
    -ms-overflow-style: -ms-autohiding-scrollbar;

    // Tighten up spacing
    >.table {
      margin-bottom: 0;

      // Ensure the content doesn't wrap
      >thead,
      >tbody,
      >tfoot {
        >tr {

          >th,
          >td {
            white-space: nowrap;
          }
        }
      }
    }

    // Special overrides for the bordered tables
    >.table-bordered {
      border: 0;

      // Nuke the appropriate borders so that the parent can handle them
      >thead,
      >tbody,
      >tfoot {
        >tr {

          >th:first-child,
          >td:first-child {
            border-left: 0;
          }

          >th:last-child,
          >td:last-child {
            border-right: 0;
          }
        }
      }

      // Only nuke the last row's bottom-border in `tbody` and `tfoot` since
      // chances are there will be only one `tr` in a `thead` and that would
      // remove the border altogether.
      >tbody,
      >tfoot {
        >tr:last-child {

          >th,
          >td {
            border-bottom: 0;
          }
        }
      }

    }
  }
}

.table-responsive {
  overflow-x: auto;
  min-height: 0.01%;

  width: 100%;
  overflow-y: hidden;
  -ms-overflow-style: -ms-autohiding-scrollbar;

  // Tighten up spacing
  >.table {
    margin-bottom: 0;

    // Ensure the content doesn't wrap
    >thead,
    >tbody,
    >tfoot {
      >tr {

        >th,
        >td {
          white-space: nowrap;
        }
      }
    }
  }

  // Special overrides for the bordered tables
  >.table-bordered {
    border: 0;

    // Nuke the appropriate borders so that the parent can handle them
    >thead,
    >tbody,
    >tfoot {
      >tr {

        >th:first-child,
        >td:first-child {
          border-left: 0;
        }

        >th:last-child,
        >td:last-child {
          border-right: 0;
        }
      }
    }

    // Only nuke the last row's bottom-border in `tbody` and `tfoot` since
    // chances are there will be only one `tr` in a `thead` and that would
    // remove the border altogether.
    >tbody,
    >tfoot {
      >tr:last-child {

        >th,
        >td {
          border-bottom: 0;
        }
      }
    }

  }
}
