]> git.wh0rd.org - tt-rss.git/blame - lib/dijit/themes/claro/layout/TabContainer.less
upgrade Dojo to 1.6.1
[tt-rss.git] / lib / dijit / themes / claro / layout / TabContainer.less
CommitLineData
81bea17a
AD
1/* TabContainer
2 *
3 * Styling TabContainer means styling the TabList and Its content container (dijitTitlePane)
4 *
5 * Tab List: (including 4 kinds of tab location)
6 * .dijitTabContainerTop-tabs - tablist container at top
7 * .dijitTabContainerBottom-tabs - tablist container at bottom
8 * .dijitTabContainerLeft-tabs - tablist container at left
9 * .dijitTabContainerRight-tabs - tablist container at right
10 *
11 * Tab Strip Button:
12 * .dijitTabStripIcon - tab strip button icon
13 * .dijitTabStripMenuIcon - down arrow icon position
14 * .dijitTabStripSlideLeftIcon - left arrow icon position
15 * .dijitTabStripSlideRightIcon - right arrow icon position
16 *
17 * .tabStripButtonDisabled - styles for disabled tab strip buttons
18 *
19 * Tab Button:
20 * .dijitTabContainerTop-tabs .dijitTabInnerDiv/.dijitTabContent - styles for top tab button container
21 * .dijitTabContainerBottom-tabs .dijitTabInnerDiv/.dijitTabContent - styles for bottom tab button container
22 * .dijitTabContainerLeft-tabs .dijitTabInnerDiv/.dijitTabContent - styles for left tab button container
23 * .dijitTabContainerRight-tabs .dijitTabInnerDiv/.dijitTabContent - styles for right tab button container
24 *
25 * .dijitTabContainerTop-tabs .dijitTabChecked .dijitTabInnerDiv/.dijitTabContent
26 * - styles for selected status of top tab button
27 * same to Bottom, Left, Right Tabs
28 *
29 * .dijitTabHover .dijitTabInnerDiv - styles when mouse hover on tab buttons
30 * .dijitTabActive .dijitTabInnerDiv - styles when mouse down on tab buttons
31 * .dijitTabChecked .dijitTabInnerDiv - styles when on buttons of selected tab
32 *
33 * .dijitTabCloseButton - the close action buttons lie at the right top of each tab button on closable tabs
34 * .dijitTabCloseButtonHover - styles when mouse hover on close action button
35 * .dijitTabCloseButtonActive - styles when mouse down on close action button
36 *
37 * Tab Button: (checked status)
38 *
39 * Tab Content Container:
40 * .dijitTabContainerTop-dijitContentPane
41 * .dijitTabContainerBottom-dijitContentPane
42 * .dijitTabContainerLeft-dijitContentPane
43 * .dijitTabContainerRight-dijitContentPane - for background and padding
44 *
45 * Nested Tabs:
46 * .dijitTabContainerNested - Container for nested tabs
47 * .dijitTabContainerTabListNested - tab list container for nested tabs
48 */
49
50@import "../variables";
51
52/*** some common features ***/
53.claro .dijitTabPaneWrapper {
54 background:@pane-background-color;
55}
56.claro .dijitTabPaneWrapper,
57.claro .dijitTabContainerTop-tabs,
58.claro .dijitTabContainerBottom-tabs,
59.claro .dijitTabContainerLeft-tabs,
60.claro .dijitTabContainerRight-tabs {
61 /* todo: add common class name for this div */
62 border-color: @border-color;
63}
64.claro .dijitTabCloseButton {
65 background: url("images/tabClose.png") no-repeat;
66 width: 14px;
67 height: 14px;
68 margin-left: 5px;
69 margin-right:-5px;
70}
71.claro .dijitTabCloseButtonHover {
72 background-position:-14px;
73}
74.claro .dijitTabCloseButtonActive {
75 background-position:-28px;
76}
77.claro .dijitTabSpacer {
78 /* set the spacer invisible. note that height:0 doesn't work on IE/quirks, it's still 10px. */
79 display: none;
80}
81.claro .dijitTabInnerDiv {
82 background-color:@unselected-background-color;
83 .transition-property(background-color, border);
84 .transition-duration(.35s);
85 color:@unselected-text-color;
86}
87.claro .dijitTabHover .dijitTabInnerDiv {
88 background-color:@hovered-background-color;
89 .transition-duration(.25s);
90 color:@hovered-text-color;
91}
92.claro .dijitTabActive .dijitTabInnerDiv {
93 background-color:@pressed-background-color;
94 color:@selected-text-color;
95 .transition-duration(.1s);
96}
97.claro .dijitTabChecked .dijitTabInnerDiv {
98 background-color:@selected-background-color;
99 color:@selected-text-color;
100}
101
102.claro .dijitTabContent {
103 border: 1px solid @border-color;
104}
105.claro .dijitTabHover .dijitTabContent {
106 border-color: @hovered-border-color;
107}
108.claro .dijitTabActive .dijitTabContent {
109 border-color: @pressed-border-color;
110}
111.claro .dijitTabChecked .dijitTabContent {
112 color:@selected-text-color; // todo: redundant with .claro .dijitTabChecked .dijitTabInnerDiv above?
113 border-color: @border-color; // don't use @selected-border-color because need to match border of TabContainer
114}
115
116.claro .tabStripButton .dijitTabInnerDiv {
117 background-color: transparent;
118}
119.claro .tabStripButton .dijitTabContent {
120 border: none;
121}
122/*** end common ***/
123
124
125/*************** top tab ***************/
126.claro .dijitTabContainerTop-tabs .dijitTab {
127 top: 1px; /* used for overlap */
128 margin-right: 1px;
129 padding-top: 3px;
130}
131.dj_ie7 .claro .dijitTabContainerTop-tabs .dijitTab {
132 top: 3px;
133}
134/* for top tab padding. change height when status changes */
135.claro .dijitTabContainerTop-tabs .dijitTabContent {
136 padding:3px 6px;
137 border-bottom-width: 0;
138 background-image:url("images/tabTop.png");
139 background-position:0 0;
140 background-repeat:repeat-x;
141 min-width: 60px;
142 text-align: center;
143}
144.claro .dijitTabContainerTop-tabs .dijitTabChecked .dijitTabContent {
145 padding-bottom: 4px;
146 padding-top: 6px;
147}
148
149/* normal status */
150.claro .dijitTabContainerTop-tabs .dijitTabInnerDiv {
151 background-image:url("images/tabTop.png");
152 background-position:0 -248px;
153 background-position:bottom;
154 background-repeat:repeat-x;
155 .box-shadow(0 -1px 1px rgba(0, 0, 0, 0.04));
156}
157
158/* checked status */
159.claro .dijitTabContainerTop-tabs .dijitTabChecked .dijitTabInnerDiv {
160 background-image:none;
161 .box-shadow(0 -1px 2px rgba(0, 0, 0, 0.05));
162}
163.claro .dijitTabContainerTop-tabs .dijitTabChecked .dijitTabContent {
164 background-position:0 -102px;
165 background-repeat:repeat-x;
166}
167/** end top tab **/
168
169
170/*************** bottom tab ***************/
171.claro .dijitTabContainerBottom-tabs .dijitTab {
172 top: -1px; /* used for overlap */
173 margin-right: 1px;
174}
175/* calculate the position and size */
176.claro .dijitTabContainerBottom-tabs .dijitTabContent {
177 padding:3px 6px;
178 border-top-width: 0;
179 background-image: url("images/tabBottom.png");
180 background-position:0 -249px;
181 background-repeat: repeat-x;
182 background-position:bottom;
183 min-width: 60px;
184 text-align: center;
185}
186.claro .dijitTabContainerBottom-tabs .dijitTab {
187 padding-bottom: 3px;
188}
189/* normal status */
190.claro .dijitTabContainerBottom-tabs .dijitTabInnerDiv {
191 background-image: url("images/tabBottom.png");
192 background-position: top;
193 background-repeat: repeat-x;
194 .box-shadow(0 1px 1px rgba(0, 0, 0, 0.04));
195
196}
197
198/* checked status */
199.claro .dijitTabContainerBottom-tabs .dijitTabChecked .dijitTabContent {
200 padding-bottom: 7px;
201 padding-top: 4px;
202 background-position:0 -119px;
203}
204.claro .dijitTabContainerBottom-tabs .dijitTabChecked {
205 padding-bottom: 0;
206}
207.claro .dijitTabContainerBottom-tabs .dijitTabChecked .dijitTabInnerDiv {
208 background-image:none;
209 .box-shadow(0 1px 2px rgba(0, 0, 0, 0.05));
210}
211/** end bottom tab **/
212
213/*************** left tab ***************/
214.claro .dijitTabContainerLeft-tabs .dijitTab {
215 border-right-width: 0;
216 left: 1px; /* used for overlap */
217 margin-bottom: 1px;
218}
219/* normal status */
220.claro .dijitTabContainerLeft-tabs .dijitTabInnerDiv {
221 background-image: url("images/tabLeft.png");
222 background-position: -347px -340px;
223 background-repeat: repeat-y;
224}
225.claro .dijitTabContainerLeft-tabs .dijitTabContent {
226 padding:3px 8px 4px 4px;
227 background-image: url("images/tabLeft.png");
228 background-repeat: repeat-y;
229 background-position:0 0;
230}
231/* checked status */
232.claro .dijitTabContainerLeft-tabs .dijitTabChecked .dijitTabContent {
233 padding-right: 9px;
234 border-right: none;
235 background-image: none;
236}
237.claro .dijitTabContainerLeft-tabs .dijitTabChecked .dijitTabInnerDiv {
238 background-position:0 -179px;
239 background-repeat:repeat-y;
240 .box-shadow(-1px 0 2px rgba(0, 0, 0, .05));
241}
242/** end left tab **/
243
244/*************** right tab ***************/
245.claro .dijitTabContainerRight-tabs .dijitTab {
246 border-left-width: 0;
247 left: -1px; /* used for overlap */
248 margin-bottom: 1px;
249}
250/* normal status */
251.claro .dijitTabContainerRight-tabs .dijitTabInnerDiv {
252 background-image: url("images/tabRight.png");
253 background-repeat: repeat-y;
254 background-position: -1px -347px;
255}
256.claro .dijitTabContainerRight-tabs .dijitTabContent {
257 padding:3px 8px 4px 4px;
258 background-image: url("images/tabRight.png");
259 background-position:right top;
260 background-repeat: repeat-y;
261}
262/* checked status */
263.claro .dijitTabContainerRight-tabs .dijitTabChecked .dijitTabContent {
264 padding-left: 5px;
265 border-left: none;
266 background-image: none;
267}
268.claro .dijitTabContainerRight-tabs .dijitTabChecked .dijitTabInnerDiv {
269 background-position:-348px -179px;
270 .box-shadow(1px 0 2px rgba(0, 0, 0, 0.07));
271}
272/** end right tab **/
273
274/** round corner **/
275.claro .dijitTabContainerTop-tabs .dijitTabInnerDiv,
276.claro .dijitTabContainerTop-tabs .dijitTabContent {
277 .border-radius(2px 2px 0 0);
278}
279.claro .dijitTabContainerBottom-tabs .dijitTabInnerDiv,
280.claro .dijitTabContainerBottom-tabs .dijitTabContent{
281 .border-radius(0 0 2px 2px);
282}
283.claro .dijitTabContainerLeft-tabs .dijitTabInnerDiv,
284.claro .dijitTabContainerLeft-tabs .dijitTabContent{
285 .border-radius(2px 0 0 2px);
286}
287
288.claro .dijitTabContainerRight-tabs .dijitTabInnerDiv,
289.claro .dijitTabContainerRight-tabs .dijitTabContent{
290 .border-radius(0 2px 2px 0);
291}
292
293/************ left/right scroll buttons + menu button ************/
294.claro .tabStripButton {
295 background-color:@button-background-color;
296 border: 1px solid @border-color;
297}
298.claro .dijitTabListContainer-top .tabStripButton {
299 padding: 4px 3px;
300 margin-top:7px;
301 background-image: url("images/tabTop.png");
302 background-position:0 0;
303}
304.claro .dijitTabListContainer-bottom .tabStripButton {
305 padding:5px 3px;
306 margin-bottom:4px;
307 background-image: url("images/tabTop.png");
308 background-position:0 -248px;
309 background-position:bottom;
310}
311.claro .tabStripButtonHover {
312 background-color:@hovered-background-color;
313}
314.claro .tabStripButtonActive {
315 background-color:@pressed-background-color;
316}
317.claro .dijitTabStripIcon {
318 height:15px;
319 width:15px;
320 margin: 0 auto;
321 background:url("../form/images/buttonArrows.png") no-repeat -75px 50%;
322 background-color: transparent;
323}
324.claro .dijitTabStripSlideRightIcon{
325 background-position: -24px 50%;
326}
327.claro .dijitTabStripMenuIcon {
328 background-position: -51px 50%;
329}
330
331/*disabled styles for tab strip buttons*/
332.claro .dijitTabListContainer-top .tabStripButtonDisabled,
333.claro .dijitTabListContainer-bottom .tabStripButtonDisabled {
334 background-color:@tab-disabled-background-color;
335 border:1px solid @border-color; /* to match border of TabContainer itself */
336}
337.claro .tabStripButtonDisabled .dijitTabStripSlideLeftIcon {
338 background-position:-175px 50%;
339}
340.claro .tabStripButtonDisabled .dijitTabStripSlideRightIcon {
341 background-position: -124px 50%;
342}
343.claro .tabStripButtonDisabled .dijitTabStripMenuIcon {
344 background-position: -151px 50%;
345}
346/* Nested Tabs */
347.claro .dijitTabContainerNested .dijitTabListWrapper {
348 height: auto;
349}
350.claro .dijitTabContainerNested .dijitTabContainerTop-tabs {
351 border-bottom:solid 1px @border-color;
352 padding:1px 2px 4px;
353 margin-top:-2px;
354}
355.claro .dijitTabContainerTabListNested .dijitTabContent {
356 background:rgba(255, 255, 255, 0) none repeat scroll 0 0;
357 border: none;
358 padding: 4px;
359 border-color: rgba(118,157,192,0);
360 .transition-property(background-color, border-color);
361 .transition-duration(.3s);
362 .border-radius(2px);
363}
364.claro .dijitTabContainerTabListNested .dijitTab .dijitTabInnerDiv {
365 /* 4 element selector to override box-shadow setting from above rule:
366 * .claro .dijitTabContainerTop-tabs .dijitTabChecked .dijitTabInnerDiv { ... }
367 */
368 background: none;
369 border: none;
370 top: 0;/* to override top: 1px/-1px for normal tabs */
371 .box-shadow(none);
372}
373.claro .dijitTabContainerTabListNested .dijitTabHover .dijitTabContent {
374 background-color: @nestedtab-hovered-background-color;
375 border:solid 1px @nestedtab-hovered-border-color;
376 padding: 3px;
377 .transition-duration(.2s);
378}
379.claro .dijitTabContainerTabListNested .dijitTabHover .tabLabel {
380 text-decoration: none;
381}
382.claro .dijitTabContainerTabListNested .dijitTabActive .dijitTabContent {
383 border:solid 1px @nestedtab-selected-border-color;
384 padding: 3px;
385 background: @nestedtab-selected-background-color url("images/tabNested.png") repeat-x;
386 .transition-duration(.1s);
387}
388.claro .dijitTabContainerTabListNested .dijitTabChecked .dijitTabContent {
389 padding: 3px;
390 border:solid 1px @selected-border-color;
391 background-position: 0 105px;
392 background-color:@selected-background-color;
393}
394.claro .dijitTabContainerTabListNested .dijitTabChecked .tabLabel {
395 text-decoration: none;
396 background-image:none;
397}
398.claro .dijitTabPaneWrapperNested {
399 border: none;/* prevent double border */
400}
401
402
403.dj_ie6 .claro .dijitTabContent,
404.dj_ie6 .claro .dijitTabInnerDiv,
405.dj_ie6 .dijitTabListContainer-top .tabStripButton,
406.dj_ie6 .dijitTabListContainer-bottom .tabStripButton{
407 background-image: none;
408}