comparison static/bootstrap/less/navs.less @ 61:130eccd396d8

Now using Boostrap with LESS.
author Ludovic Chabant <ludovic@chabant.com>
date Wed, 06 Feb 2013 08:22:31 -0800
parents
children a5a3d454eac9
comparison
equal deleted inserted replaced
60:8250c977bc50 61:130eccd396d8
1 //
2 // Navs
3 // --------------------------------------------------
4
5
6 // BASE CLASS
7 // ----------
8
9 .nav {
10 margin-left: 0;
11 margin-bottom: @baseLineHeight;
12 list-style: none;
13 }
14
15 // Make links block level
16 .nav > li > a {
17 display: block;
18 }
19 .nav > li > a:hover {
20 text-decoration: none;
21 background-color: @grayLighter;
22 }
23
24 // Prevent IE8 from misplacing imgs
25 // See https://github.com/h5bp/html5-boilerplate/issues/984#issuecomment-3985989
26 .nav > li > a > img {
27 max-width: none;
28 }
29
30 // Redeclare pull classes because of specifity
31 .nav > .pull-right {
32 float: right;
33 }
34
35 // Nav headers (for dropdowns and lists)
36 .nav-header {
37 display: block;
38 padding: 3px 15px;
39 font-size: 11px;
40 font-weight: bold;
41 line-height: @baseLineHeight;
42 color: @grayLight;
43 text-shadow: 0 1px 0 rgba(255,255,255,.5);
44 text-transform: uppercase;
45 }
46 // Space them out when they follow another list item (link)
47 .nav li + .nav-header {
48 margin-top: 9px;
49 }
50
51
52
53 // NAV LIST
54 // --------
55
56 .nav-list {
57 padding-left: 15px;
58 padding-right: 15px;
59 margin-bottom: 0;
60 }
61 .nav-list > li > a,
62 .nav-list .nav-header {
63 margin-left: -15px;
64 margin-right: -15px;
65 text-shadow: 0 1px 0 rgba(255,255,255,.5);
66 }
67 .nav-list > li > a {
68 padding: 3px 15px;
69 }
70 .nav-list > .active > a,
71 .nav-list > .active > a:hover {
72 color: @white;
73 text-shadow: 0 -1px 0 rgba(0,0,0,.2);
74 background-color: @linkColor;
75 }
76 .nav-list [class^="icon-"],
77 .nav-list [class*=" icon-"] {
78 margin-right: 2px;
79 }
80 // Dividers (basically an hr) within the dropdown
81 .nav-list .divider {
82 .nav-divider();
83 }
84
85
86
87 // TABS AND PILLS
88 // -------------
89
90 // Common styles
91 .nav-tabs,
92 .nav-pills {
93 .clearfix();
94 }
95 .nav-tabs > li,
96 .nav-pills > li {
97 float: left;
98 }
99 .nav-tabs > li > a,
100 .nav-pills > li > a {
101 padding-right: 12px;
102 padding-left: 12px;
103 margin-right: 2px;
104 line-height: 14px; // keeps the overall height an even number
105 }
106
107 // TABS
108 // ----
109
110 // Give the tabs something to sit on
111 .nav-tabs {
112 border-bottom: 1px solid #ddd;
113 }
114 // Make the list-items overlay the bottom border
115 .nav-tabs > li {
116 margin-bottom: -1px;
117 }
118 // Actual tabs (as links)
119 .nav-tabs > li > a {
120 padding-top: 8px;
121 padding-bottom: 8px;
122 line-height: @baseLineHeight;
123 border: 1px solid transparent;
124 .border-radius(4px 4px 0 0);
125 &:hover {
126 border-color: @grayLighter @grayLighter #ddd;
127 }
128 }
129 // Active state, and it's :hover to override normal :hover
130 .nav-tabs > .active > a,
131 .nav-tabs > .active > a:hover {
132 color: @gray;
133 background-color: @bodyBackground;
134 border: 1px solid #ddd;
135 border-bottom-color: transparent;
136 cursor: default;
137 }
138
139
140 // PILLS
141 // -----
142
143 // Links rendered as pills
144 .nav-pills > li > a {
145 padding-top: 8px;
146 padding-bottom: 8px;
147 margin-top: 2px;
148 margin-bottom: 2px;
149 .border-radius(5px);
150 }
151
152 // Active state
153 .nav-pills > .active > a,
154 .nav-pills > .active > a:hover {
155 color: @white;
156 background-color: @linkColor;
157 }
158
159
160
161 // STACKED NAV
162 // -----------
163
164 // Stacked tabs and pills
165 .nav-stacked > li {
166 float: none;
167 }
168 .nav-stacked > li > a {
169 margin-right: 0; // no need for the gap between nav items
170 }
171
172 // Tabs
173 .nav-tabs.nav-stacked {
174 border-bottom: 0;
175 }
176 .nav-tabs.nav-stacked > li > a {
177 border: 1px solid #ddd;
178 .border-radius(0);
179 }
180 .nav-tabs.nav-stacked > li:first-child > a {
181 .border-top-radius(4px);
182 }
183 .nav-tabs.nav-stacked > li:last-child > a {
184 .border-bottom-radius(4px);
185 }
186 .nav-tabs.nav-stacked > li > a:hover {
187 border-color: #ddd;
188 z-index: 2;
189 }
190
191 // Pills
192 .nav-pills.nav-stacked > li > a {
193 margin-bottom: 3px;
194 }
195 .nav-pills.nav-stacked > li:last-child > a {
196 margin-bottom: 1px; // decrease margin to match sizing of stacked tabs
197 }
198
199
200
201 // DROPDOWNS
202 // ---------
203
204 .nav-tabs .dropdown-menu {
205 .border-radius(0 0 6px 6px); // remove the top rounded corners here since there is a hard edge above the menu
206 }
207 .nav-pills .dropdown-menu {
208 .border-radius(6px); // make rounded corners match the pills
209 }
210
211 // Default dropdown links
212 // -------------------------
213 // Make carets use linkColor to start
214 .nav .dropdown-toggle .caret {
215 border-top-color: @linkColor;
216 border-bottom-color: @linkColor;
217 margin-top: 6px;
218 }
219 .nav .dropdown-toggle:hover .caret {
220 border-top-color: @linkColorHover;
221 border-bottom-color: @linkColorHover;
222 }
223 /* move down carets for tabs */
224 .nav-tabs .dropdown-toggle .caret {
225 margin-top: 8px;
226 }
227
228 // Active dropdown links
229 // -------------------------
230 .nav .active .dropdown-toggle .caret {
231 border-top-color: #fff;
232 border-bottom-color: #fff;
233 }
234 .nav-tabs .active .dropdown-toggle .caret {
235 border-top-color: @gray;
236 border-bottom-color: @gray;
237 }
238
239 // Active:hover dropdown links
240 // -------------------------
241 .nav > .dropdown.active > a:hover {
242 cursor: pointer;
243 }
244
245 // Open dropdowns
246 // -------------------------
247 .nav-tabs .open .dropdown-toggle,
248 .nav-pills .open .dropdown-toggle,
249 .nav > li.dropdown.open.active > a:hover {
250 color: @white;
251 background-color: @grayLight;
252 border-color: @grayLight;
253 }
254 .nav li.dropdown.open .caret,
255 .nav li.dropdown.open.active .caret,
256 .nav li.dropdown.open a:hover .caret {
257 border-top-color: @white;
258 border-bottom-color: @white;
259 .opacity(100);
260 }
261
262 // Dropdowns in stacked tabs
263 .tabs-stacked .open > a:hover {
264 border-color: @grayLight;
265 }
266
267
268
269 // TABBABLE
270 // --------
271
272
273 // COMMON STYLES
274 // -------------
275
276 // Clear any floats
277 .tabbable {
278 .clearfix();
279 }
280 .tab-content {
281 overflow: auto; // prevent content from running below tabs
282 }
283
284 // Remove border on bottom, left, right
285 .tabs-below > .nav-tabs,
286 .tabs-right > .nav-tabs,
287 .tabs-left > .nav-tabs {
288 border-bottom: 0;
289 }
290
291 // Show/hide tabbable areas
292 .tab-content > .tab-pane,
293 .pill-content > .pill-pane {
294 display: none;
295 }
296 .tab-content > .active,
297 .pill-content > .active {
298 display: block;
299 }
300
301
302 // BOTTOM
303 // ------
304
305 .tabs-below > .nav-tabs {
306 border-top: 1px solid #ddd;
307 }
308 .tabs-below > .nav-tabs > li {
309 margin-top: -1px;
310 margin-bottom: 0;
311 }
312 .tabs-below > .nav-tabs > li > a {
313 .border-radius(0 0 4px 4px);
314 &:hover {
315 border-bottom-color: transparent;
316 border-top-color: #ddd;
317 }
318 }
319 .tabs-below > .nav-tabs > .active > a,
320 .tabs-below > .nav-tabs > .active > a:hover {
321 border-color: transparent #ddd #ddd #ddd;
322 }
323
324 // LEFT & RIGHT
325 // ------------
326
327 // Common styles
328 .tabs-left > .nav-tabs > li,
329 .tabs-right > .nav-tabs > li {
330 float: none;
331 }
332 .tabs-left > .nav-tabs > li > a,
333 .tabs-right > .nav-tabs > li > a {
334 min-width: 74px;
335 margin-right: 0;
336 margin-bottom: 3px;
337 }
338
339 // Tabs on the left
340 .tabs-left > .nav-tabs {
341 float: left;
342 margin-right: 19px;
343 border-right: 1px solid #ddd;
344 }
345 .tabs-left > .nav-tabs > li > a {
346 margin-right: -1px;
347 .border-radius(4px 0 0 4px);
348 }
349 .tabs-left > .nav-tabs > li > a:hover {
350 border-color: @grayLighter #ddd @grayLighter @grayLighter;
351 }
352 .tabs-left > .nav-tabs .active > a,
353 .tabs-left > .nav-tabs .active > a:hover {
354 border-color: #ddd transparent #ddd #ddd;
355 *border-right-color: @white;
356 }
357
358 // Tabs on the right
359 .tabs-right > .nav-tabs {
360 float: right;
361 margin-left: 19px;
362 border-left: 1px solid #ddd;
363 }
364 .tabs-right > .nav-tabs > li > a {
365 margin-left: -1px;
366 .border-radius(0 4px 4px 0);
367 }
368 .tabs-right > .nav-tabs > li > a:hover {
369 border-color: @grayLighter @grayLighter @grayLighter #ddd;
370 }
371 .tabs-right > .nav-tabs .active > a,
372 .tabs-right > .nav-tabs .active > a:hover {
373 border-color: #ddd #ddd #ddd transparent;
374 *border-left-color: @white;
375 }
376
377
378
379 // DISABLED STATES
380 // ---------------
381
382 // Gray out text
383 .nav > .disabled > a {
384 color: @grayLight;
385 }
386 // Nuke hover effects
387 .nav > .disabled > a:hover {
388 text-decoration: none;
389 background-color: transparent;
390 cursor: default;
391 }