Statistics
| Branch: | Tag: | Revision:

root / cloudcms / static / cloudcms / less / tables.less @ c1468bcc

History | View | Annotate | Download (4.8 kB)

1 c1468bcc Kostas Papadimitriou
/*
2 c1468bcc Kostas Papadimitriou
 * Tables.less
3 c1468bcc Kostas Papadimitriou
 * Tables for, you guessed it, tabular data
4 c1468bcc Kostas Papadimitriou
 * ---------------------------------------- */
5 c1468bcc Kostas Papadimitriou
6 c1468bcc Kostas Papadimitriou
7 c1468bcc Kostas Papadimitriou
// BASELINE STYLES
8 c1468bcc Kostas Papadimitriou
// ---------------
9 c1468bcc Kostas Papadimitriou
10 c1468bcc Kostas Papadimitriou
table {
11 c1468bcc Kostas Papadimitriou
  width: 100%;
12 c1468bcc Kostas Papadimitriou
  margin-bottom: @baseline;
13 c1468bcc Kostas Papadimitriou
  padding: 0;
14 c1468bcc Kostas Papadimitriou
  font-size: @basefont;
15 c1468bcc Kostas Papadimitriou
  border-collapse: collapse;
16 c1468bcc Kostas Papadimitriou
  th,
17 c1468bcc Kostas Papadimitriou
  td {
18 c1468bcc Kostas Papadimitriou
    padding: 10px 10px 9px;
19 c1468bcc Kostas Papadimitriou
    line-height: @baseline;
20 c1468bcc Kostas Papadimitriou
    text-align: left;
21 c1468bcc Kostas Papadimitriou
  }
22 c1468bcc Kostas Papadimitriou
  th {
23 c1468bcc Kostas Papadimitriou
    padding-top: 9px;
24 c1468bcc Kostas Papadimitriou
    font-weight: bold;
25 c1468bcc Kostas Papadimitriou
    vertical-align: middle;
26 c1468bcc Kostas Papadimitriou
  }
27 c1468bcc Kostas Papadimitriou
  td {
28 c1468bcc Kostas Papadimitriou
    vertical-align: top;
29 c1468bcc Kostas Papadimitriou
    border-top: 1px solid #ddd;
30 c1468bcc Kostas Papadimitriou
  }
31 c1468bcc Kostas Papadimitriou
  // When scoped to row, fix th in tbody
32 c1468bcc Kostas Papadimitriou
  tbody th {
33 c1468bcc Kostas Papadimitriou
    border-top: 1px solid #ddd;
34 c1468bcc Kostas Papadimitriou
    vertical-align: top;
35 c1468bcc Kostas Papadimitriou
  }
36 c1468bcc Kostas Papadimitriou
}
37 c1468bcc Kostas Papadimitriou
38 c1468bcc Kostas Papadimitriou
39 c1468bcc Kostas Papadimitriou
// CONDENSED VERSION
40 c1468bcc Kostas Papadimitriou
// -----------------
41 c1468bcc Kostas Papadimitriou
.condensed-table {
42 c1468bcc Kostas Papadimitriou
  th,
43 c1468bcc Kostas Papadimitriou
  td {
44 c1468bcc Kostas Papadimitriou
    padding: 5px 5px 4px;
45 c1468bcc Kostas Papadimitriou
  }
46 c1468bcc Kostas Papadimitriou
}
47 c1468bcc Kostas Papadimitriou
48 c1468bcc Kostas Papadimitriou
49 c1468bcc Kostas Papadimitriou
// BORDERED VERSION
50 c1468bcc Kostas Papadimitriou
// ----------------
51 c1468bcc Kostas Papadimitriou
52 c1468bcc Kostas Papadimitriou
.bordered-table {
53 c1468bcc Kostas Papadimitriou
  border: 1px solid #ddd;
54 c1468bcc Kostas Papadimitriou
  border-collapse: separate; // Done so we can round those corners!
55 c1468bcc Kostas Papadimitriou
  *border-collapse: collapse; /* IE7, collapse table to remove spacing */
56 c1468bcc Kostas Papadimitriou
  .border-radius(4px);
57 c1468bcc Kostas Papadimitriou
  th + th,
58 c1468bcc Kostas Papadimitriou
  td + td,
59 c1468bcc Kostas Papadimitriou
  th + td {
60 c1468bcc Kostas Papadimitriou
    border-left: 1px solid #ddd;
61 c1468bcc Kostas Papadimitriou
  }
62 c1468bcc Kostas Papadimitriou
  thead tr:first-child th:first-child,
63 c1468bcc Kostas Papadimitriou
  tbody tr:first-child td:first-child {
64 c1468bcc Kostas Papadimitriou
    .border-radius(4px 0 0 0);
65 c1468bcc Kostas Papadimitriou
  }
66 c1468bcc Kostas Papadimitriou
  thead tr:first-child th:last-child,
67 c1468bcc Kostas Papadimitriou
  tbody tr:first-child td:last-child {
68 c1468bcc Kostas Papadimitriou
    .border-radius(0 4px 0 0);
69 c1468bcc Kostas Papadimitriou
  }
70 c1468bcc Kostas Papadimitriou
  tbody tr:last-child td:first-child {
71 c1468bcc Kostas Papadimitriou
    .border-radius(0 0 0 4px);
72 c1468bcc Kostas Papadimitriou
  }
73 c1468bcc Kostas Papadimitriou
  tbody tr:last-child td:last-child {
74 c1468bcc Kostas Papadimitriou
    .border-radius(0 0 4px 0);
75 c1468bcc Kostas Papadimitriou
  }
76 c1468bcc Kostas Papadimitriou
}
77 c1468bcc Kostas Papadimitriou
78 c1468bcc Kostas Papadimitriou
79 c1468bcc Kostas Papadimitriou
// TABLE CELL SIZES
80 c1468bcc Kostas Papadimitriou
// ----------------
81 c1468bcc Kostas Papadimitriou
82 c1468bcc Kostas Papadimitriou
// This is a duplication of the main grid .columns() mixin, but subtracts 20px to account for input padding and border
83 c1468bcc Kostas Papadimitriou
.tableColumns(@columnSpan: 1) {
84 c1468bcc Kostas Papadimitriou
  width: ((@gridColumnWidth - 20) * @columnSpan) + ((@gridColumnWidth - 20) * (@columnSpan - 1));
85 c1468bcc Kostas Papadimitriou
}
86 c1468bcc Kostas Papadimitriou
table {
87 c1468bcc Kostas Papadimitriou
  // Default columns
88 c1468bcc Kostas Papadimitriou
  .span1     { .tableColumns(1); }
89 c1468bcc Kostas Papadimitriou
  .span2     { .tableColumns(2); }
90 c1468bcc Kostas Papadimitriou
  .span3     { .tableColumns(3); }
91 c1468bcc Kostas Papadimitriou
  .span4     { .tableColumns(4); }
92 c1468bcc Kostas Papadimitriou
  .span5     { .tableColumns(5); }
93 c1468bcc Kostas Papadimitriou
  .span6     { .tableColumns(6); }
94 c1468bcc Kostas Papadimitriou
  .span7     { .tableColumns(7); }
95 c1468bcc Kostas Papadimitriou
  .span8     { .tableColumns(8); }
96 c1468bcc Kostas Papadimitriou
  .span9     { .tableColumns(9); }
97 c1468bcc Kostas Papadimitriou
  .span10    { .tableColumns(10); }
98 c1468bcc Kostas Papadimitriou
  .span11    { .tableColumns(11); }
99 c1468bcc Kostas Papadimitriou
  .span12    { .tableColumns(12); }
100 c1468bcc Kostas Papadimitriou
  .span13    { .tableColumns(13); }
101 c1468bcc Kostas Papadimitriou
  .span14    { .tableColumns(14); }
102 c1468bcc Kostas Papadimitriou
  .span15    { .tableColumns(15); }
103 c1468bcc Kostas Papadimitriou
  .span16    { .tableColumns(16); }
104 c1468bcc Kostas Papadimitriou
}
105 c1468bcc Kostas Papadimitriou
106 c1468bcc Kostas Papadimitriou
107 c1468bcc Kostas Papadimitriou
// ZEBRA-STRIPING
108 c1468bcc Kostas Papadimitriou
// --------------
109 c1468bcc Kostas Papadimitriou
110 c1468bcc Kostas Papadimitriou
// Default zebra-stripe styles (alternating gray and transparent backgrounds)
111 c1468bcc Kostas Papadimitriou
.zebra-striped {
112 c1468bcc Kostas Papadimitriou
  tbody {
113 c1468bcc Kostas Papadimitriou
    tr:nth-child(odd) td,
114 c1468bcc Kostas Papadimitriou
    tr:nth-child(odd) th {
115 c1468bcc Kostas Papadimitriou
      background-color: #f9f9f9;
116 c1468bcc Kostas Papadimitriou
    }
117 c1468bcc Kostas Papadimitriou
    tr:hover td,
118 c1468bcc Kostas Papadimitriou
    tr:hover th {
119 c1468bcc Kostas Papadimitriou
      background-color: #f5f5f5;
120 c1468bcc Kostas Papadimitriou
    }
121 c1468bcc Kostas Papadimitriou
  }
122 c1468bcc Kostas Papadimitriou
}
123 c1468bcc Kostas Papadimitriou
124 c1468bcc Kostas Papadimitriou
table {
125 c1468bcc Kostas Papadimitriou
  // Tablesorting styles w/ jQuery plugin
126 c1468bcc Kostas Papadimitriou
  .header {
127 c1468bcc Kostas Papadimitriou
    cursor: pointer;
128 c1468bcc Kostas Papadimitriou
    &:after {
129 c1468bcc Kostas Papadimitriou
      content: "";
130 c1468bcc Kostas Papadimitriou
      float: right;
131 c1468bcc Kostas Papadimitriou
      margin-top: 7px;
132 c1468bcc Kostas Papadimitriou
      border-width: 0 4px 4px;
133 c1468bcc Kostas Papadimitriou
      border-style: solid;
134 c1468bcc Kostas Papadimitriou
      border-color: #000 transparent;
135 c1468bcc Kostas Papadimitriou
      visibility: hidden;
136 c1468bcc Kostas Papadimitriou
    }
137 c1468bcc Kostas Papadimitriou
  }
138 c1468bcc Kostas Papadimitriou
  // Style the sorted column headers (THs)
139 c1468bcc Kostas Papadimitriou
  .headerSortUp,
140 c1468bcc Kostas Papadimitriou
  .headerSortDown {
141 c1468bcc Kostas Papadimitriou
    background-color: rgba(141,192,219,.25);
142 c1468bcc Kostas Papadimitriou
    text-shadow: 0 1px 1px rgba(255,255,255,.75);
143 c1468bcc Kostas Papadimitriou
  }
144 c1468bcc Kostas Papadimitriou
  // Style the ascending (reverse alphabetical) column header
145 c1468bcc Kostas Papadimitriou
  .header:hover {
146 c1468bcc Kostas Papadimitriou
    &:after {
147 c1468bcc Kostas Papadimitriou
      visibility:visible;
148 c1468bcc Kostas Papadimitriou
    }
149 c1468bcc Kostas Papadimitriou
  }
150 c1468bcc Kostas Papadimitriou
  // Style the descending (alphabetical) column header
151 c1468bcc Kostas Papadimitriou
  .headerSortDown,
152 c1468bcc Kostas Papadimitriou
  .headerSortDown:hover {
153 c1468bcc Kostas Papadimitriou
    &:after {
154 c1468bcc Kostas Papadimitriou
      visibility:visible;
155 c1468bcc Kostas Papadimitriou
      .opacity(60);
156 c1468bcc Kostas Papadimitriou
    }
157 c1468bcc Kostas Papadimitriou
  }
158 c1468bcc Kostas Papadimitriou
  // Style the ascending (reverse alphabetical) column header
159 c1468bcc Kostas Papadimitriou
  .headerSortUp {
160 c1468bcc Kostas Papadimitriou
    &:after {
161 c1468bcc Kostas Papadimitriou
      border-bottom: none;
162 c1468bcc Kostas Papadimitriou
      border-left: 4px solid transparent;
163 c1468bcc Kostas Papadimitriou
      border-right: 4px solid transparent;
164 c1468bcc Kostas Papadimitriou
      border-top: 4px solid #000;
165 c1468bcc Kostas Papadimitriou
      visibility:visible;
166 c1468bcc Kostas Papadimitriou
      .box-shadow(none); //can't add boxshadow to downward facing arrow :(
167 c1468bcc Kostas Papadimitriou
      .opacity(60);
168 c1468bcc Kostas Papadimitriou
    }
169 c1468bcc Kostas Papadimitriou
  }
170 c1468bcc Kostas Papadimitriou
  // Blue Table Headings
171 c1468bcc Kostas Papadimitriou
  .blue {
172 c1468bcc Kostas Papadimitriou
    color: @blue;
173 c1468bcc Kostas Papadimitriou
    border-bottom-color: @blue;
174 c1468bcc Kostas Papadimitriou
  }
175 c1468bcc Kostas Papadimitriou
  .headerSortUp.blue,
176 c1468bcc Kostas Papadimitriou
  .headerSortDown.blue {
177 c1468bcc Kostas Papadimitriou
    background-color: lighten(@blue, 40%);
178 c1468bcc Kostas Papadimitriou
  }
179 c1468bcc Kostas Papadimitriou
  // Green Table Headings
180 c1468bcc Kostas Papadimitriou
  .green {
181 c1468bcc Kostas Papadimitriou
    color: @green;
182 c1468bcc Kostas Papadimitriou
    border-bottom-color: @green;
183 c1468bcc Kostas Papadimitriou
  }
184 c1468bcc Kostas Papadimitriou
  .headerSortUp.green,
185 c1468bcc Kostas Papadimitriou
  .headerSortDown.green {
186 c1468bcc Kostas Papadimitriou
    background-color: lighten(@green, 40%);
187 c1468bcc Kostas Papadimitriou
  }
188 c1468bcc Kostas Papadimitriou
  // Red Table Headings
189 c1468bcc Kostas Papadimitriou
  .red {
190 c1468bcc Kostas Papadimitriou
    color: @red;
191 c1468bcc Kostas Papadimitriou
    border-bottom-color: @red;
192 c1468bcc Kostas Papadimitriou
  }
193 c1468bcc Kostas Papadimitriou
  .headerSortUp.red,
194 c1468bcc Kostas Papadimitriou
  .headerSortDown.red {
195 c1468bcc Kostas Papadimitriou
    background-color: lighten(@red, 50%);
196 c1468bcc Kostas Papadimitriou
  }
197 c1468bcc Kostas Papadimitriou
  // Yellow Table Headings
198 c1468bcc Kostas Papadimitriou
  .yellow {
199 c1468bcc Kostas Papadimitriou
    color: @yellow;
200 c1468bcc Kostas Papadimitriou
    border-bottom-color: @yellow;
201 c1468bcc Kostas Papadimitriou
  }
202 c1468bcc Kostas Papadimitriou
  .headerSortUp.yellow,
203 c1468bcc Kostas Papadimitriou
  .headerSortDown.yellow {
204 c1468bcc Kostas Papadimitriou
    background-color: lighten(@yellow, 40%);
205 c1468bcc Kostas Papadimitriou
  }
206 c1468bcc Kostas Papadimitriou
  // Orange Table Headings
207 c1468bcc Kostas Papadimitriou
  .orange {
208 c1468bcc Kostas Papadimitriou
    color: @orange;
209 c1468bcc Kostas Papadimitriou
    border-bottom-color: @orange;
210 c1468bcc Kostas Papadimitriou
  }
211 c1468bcc Kostas Papadimitriou
  .headerSortUp.orange,
212 c1468bcc Kostas Papadimitriou
  .headerSortDown.orange {
213 c1468bcc Kostas Papadimitriou
    background-color: lighten(@orange, 40%);
214 c1468bcc Kostas Papadimitriou
  }
215 c1468bcc Kostas Papadimitriou
  // Purple Table Headings
216 c1468bcc Kostas Papadimitriou
  .purple {
217 c1468bcc Kostas Papadimitriou
    color: @purple;
218 c1468bcc Kostas Papadimitriou
    border-bottom-color: @purple;
219 c1468bcc Kostas Papadimitriou
  }
220 c1468bcc Kostas Papadimitriou
  .headerSortUp.purple,
221 c1468bcc Kostas Papadimitriou
  .headerSortDown.purple {
222 c1468bcc Kostas Papadimitriou
    background-color: lighten(@purple, 40%);
223 c1468bcc Kostas Papadimitriou
  }
224 c1468bcc Kostas Papadimitriou
}