Upgrade to ExtJS 3.2.0 - Released 03/30/2010
[extjs.git] / resources / css / structure / grid.css
1 /*!
2  * Ext JS Library 3.2.0
3  * Copyright(c) 2006-2010 Ext JS, Inc.
4  * licensing@extjs.com
5  * http://www.extjs.com/license
6  */
7 /* Grid3 styles */
8 .x-grid3 {
9         position:relative;
10         overflow:hidden;
11 }
12
13 .x-grid-panel .x-panel-body {
14     overflow:hidden !important;
15 }
16
17 .x-grid-panel .x-panel-mc .x-panel-body {
18     border:1px solid;
19 }
20
21 .x-grid3 table {
22     table-layout:fixed;
23 }
24
25 .x-grid3-viewport{
26         overflow:hidden;
27 }
28
29 .x-grid3-hd-row td, .x-grid3-row td, .x-grid3-summary-row td{
30     -moz-outline: none;
31     outline: none;
32         -moz-user-focus: normal;
33 }
34
35 .x-grid3-row td, .x-grid3-summary-row td {
36     line-height:13px;
37     vertical-align: top;
38         padding-left:1px;
39     padding-right:1px;
40     -moz-user-select: none;
41     -khtml-user-select:none;
42     -webkit-user-select:ignore;
43 }
44
45 .x-grid3-cell{
46     -moz-user-select: none;
47     -khtml-user-select:none;
48     -webkit-user-select:ignore;
49 }
50
51 .x-grid3-hd-row td {
52     line-height:15px;
53     vertical-align:middle;
54     border-left:1px solid;
55     border-right:1px solid;
56 }
57
58 .x-grid3-hd-row .x-grid3-marker-hd {
59     padding:3px;
60 }
61
62 .x-grid3-row .x-grid3-marker {
63     padding:3px;
64 }
65
66 .x-grid3-cell-inner, .x-grid3-hd-inner{
67         overflow:hidden;
68         -o-text-overflow: ellipsis;
69         text-overflow: ellipsis;
70     padding:3px 3px 3px 5px;
71     white-space: nowrap;
72 }
73
74 .x-grid3-hd-inner {
75     position:relative;
76         cursor:inherit;
77         padding:4px 3px 4px 5px;
78 }
79
80 .x-grid3-row-body {
81     white-space:normal;
82 }
83
84 .x-grid3-body-cell {
85     -moz-outline:0 none;
86     outline:0 none;
87 }
88
89 /* IE Quirks to clip */
90 .ext-ie .x-grid3-cell-inner, .ext-ie .x-grid3-hd-inner{
91         width:100%;
92 }
93
94 /* reverse above in strict mode */
95 .ext-strict .x-grid3-cell-inner, .ext-strict .x-grid3-hd-inner{
96         width:auto;
97 }
98
99 .x-grid-row-loading {
100     background: no-repeat center center;
101 }
102
103 .x-grid-page {
104     overflow:hidden;
105 }
106
107 .x-grid3-row {
108         cursor: default;
109     border: 1px solid;
110     width:100%;
111 }
112
113 .x-grid3-row-over {
114         border:1px solid;
115     background: repeat-x left top;
116 }
117
118 .x-grid3-resize-proxy {
119         width:1px;
120     left:0;
121         cursor: e-resize;
122         cursor: col-resize;
123         position:absolute;
124         top:0;
125         height:100px;
126         overflow:hidden;
127         visibility:hidden;
128         border:0 none;
129         z-index:7;
130 }
131
132 .x-grid3-resize-marker {
133         width:1px;
134         left:0;
135         position:absolute;
136         top:0;
137         height:100px;
138         overflow:hidden;
139         visibility:hidden;
140         border:0 none;
141         z-index:7;
142 }
143
144 .x-grid3-focus {
145         position:absolute;
146         left:0;
147         top:0;
148         width:1px;
149         height:1px;
150     line-height:1px;
151     font-size:1px;
152     -moz-outline:0 none;
153     outline:0 none;
154     -moz-user-select: text;
155     -khtml-user-select: text;
156     -webkit-user-select:ignore;
157 }
158
159 /* header styles */
160 .x-grid3-header{
161         background: repeat-x 0 bottom;
162         cursor:default;
163     zoom:1;
164     padding:1px 0 0 0;
165 }
166
167 .x-grid3-header-pop {
168     border-left:1px solid;
169     float:right;
170     clear:none;
171 }
172
173 .x-grid3-header-pop-inner {
174     border-left:1px solid;
175     width:14px;
176     height:19px;
177     background: transparent no-repeat center center;
178 }
179
180 .ext-ie .x-grid3-header-pop-inner {
181     width:15px;
182 }
183
184 .ext-strict .x-grid3-header-pop-inner {
185     width:14px; 
186 }
187
188 .x-grid3-header-inner {
189     overflow:hidden;
190     zoom:1;
191     float:left;
192 }
193
194 .x-grid3-header-offset {
195     padding-left:1px;
196     text-align: left;
197 }
198
199 td.x-grid3-hd-over, td.sort-desc, td.sort-asc, td.x-grid3-hd-menu-open {
200     border-left:1px solid;
201     border-right:1px solid;
202 }
203
204 td.x-grid3-hd-over .x-grid3-hd-inner, td.sort-desc .x-grid3-hd-inner, td.sort-asc .x-grid3-hd-inner, td.x-grid3-hd-menu-open .x-grid3-hd-inner {
205     background: repeat-x left bottom;
206
207 }
208
209 .x-grid3-sort-icon{
210         background-repeat: no-repeat;
211         display: none;
212         height: 4px;
213         width: 13px;
214         margin-left:3px;
215         vertical-align: middle;
216 }
217
218 .sort-asc .x-grid3-sort-icon, .sort-desc .x-grid3-sort-icon {
219         display: inline;
220 }
221
222 /* Header position fixes for IE strict mode */
223 .ext-strict .ext-ie .x-grid3-header-inner, .ext-strict .ext-ie6 .x-grid3-hd {
224     position:relative;
225 }
226
227 .ext-strict .ext-ie6 .x-grid3-hd-inner{
228     position:static;
229 }
230
231 /* Body Styles */
232 .x-grid3-body {
233         zoom:1;
234 }
235
236 .x-grid3-scroller {
237         overflow:auto;
238     zoom:1;
239     position:relative;
240 }
241
242 .x-grid3-cell-text, .x-grid3-hd-text {
243         display: block;
244         padding: 3px 5px 3px 5px;
245         -moz-user-select: none;
246         -khtml-user-select: none;
247     -webkit-user-select:ignore;
248 }
249
250 .x-grid3-split {
251         background-position: center;
252         background-repeat: no-repeat;
253         cursor: e-resize;
254         cursor: col-resize;
255         display: block;
256         font-size: 1px;
257         height: 16px;
258         overflow: hidden;
259         position: absolute;
260         top: 2px;
261         width: 6px;
262         z-index: 3;
263 }
264
265 /* Column Reorder DD */
266 .x-dd-drag-proxy .x-grid3-hd-inner{
267         background: repeat-x left bottom;
268         width:120px;
269         padding:3px;
270         border:1px solid;
271         overflow:hidden;
272 }
273
274 .col-move-top, .col-move-bottom{
275         width:9px;
276         height:9px;
277         position:absolute;
278         top:0;
279         line-height:1px;
280         font-size:1px;
281         overflow:hidden;
282         visibility:hidden;
283         z-index:20000;
284     background:transparent no-repeat left top;
285 }
286
287 /* Selection Styles */
288 .x-grid3-row-selected {
289         border:1px dotted;
290 }
291
292 .x-grid3-locked td.x-grid3-row-marker, .x-grid3-locked .x-grid3-row-selected td.x-grid3-row-marker{
293     background: repeat-x 0 bottom !important;
294     vertical-align:middle !important;
295     padding:0;
296     border-top:1px solid;
297     border-bottom:none !important;
298     border-right:1px solid !important;
299     text-align:center;
300 }
301
302 .x-grid3-locked td.x-grid3-row-marker div, .x-grid3-locked .x-grid3-row-selected td.x-grid3-row-marker div{
303     padding:0 4px;
304     text-align:center;
305 }
306
307 /* dirty cells */
308 .x-grid3-dirty-cell {
309     background: transparent no-repeat 0 0;
310 }
311
312 /* Grid Toolbars */
313 .x-grid3-topbar, .x-grid3-bottombar{
314     overflow:hidden;
315         display:none;
316         zoom:1;
317     position:relative;
318 }
319
320 .x-grid3-topbar .x-toolbar{
321         border-right:0 none;
322 }
323
324 .x-grid3-bottombar .x-toolbar{
325         border-right:0 none;
326         border-bottom:0 none;
327         border-top:1px solid;
328 }
329
330 /* Props Grid Styles */
331 .x-props-grid .x-grid3-cell{
332         padding:1px;
333 }
334
335 .x-props-grid .x-grid3-td-name .x-grid3-cell-inner{
336         background:transparent repeat-y -16px !important;
337     padding-left:12px;
338 }
339
340 .x-props-grid .x-grid3-body .x-grid3-td-name{
341     padding:1px;
342     padding-right:0;
343     border:0 none;
344     border-right:1px solid;
345 }
346
347 /* dd */
348 .x-grid3-col-dd {
349     border:0 none;
350     padding:0;
351     background:transparent;
352 }
353
354 .x-dd-drag-ghost .x-grid3-dd-wrap {
355     padding:1px 3px 3px 1px;
356 }
357
358 .x-grid3-hd {
359     -moz-user-select:none;
360     -khtml-user-select:none;
361     -webkit-user-select:ignore;
362 }
363
364 .x-grid3-hd-btn {
365     display:none;
366     position:absolute;
367     width:14px;
368     background:no-repeat left center;
369     right:0;
370     top:0;
371     z-index:2;
372         cursor:pointer;
373 }
374
375 .x-grid3-hd-over .x-grid3-hd-btn, .x-grid3-hd-menu-open .x-grid3-hd-btn {
376     display:block;
377 }
378
379 a.x-grid3-hd-btn:hover {
380     background-position:-14px center;
381 }
382
383 /* Expanders */
384 .x-grid3-body .x-grid3-td-expander {
385     background:transparent repeat-y right;
386 }
387
388 .x-grid3-body .x-grid3-td-expander .x-grid3-cell-inner {
389     padding:0 !important;
390     height:100%;
391 }
392
393 .x-grid3-row-expander {
394     width:100%;
395     height:18px;
396     background-position:4px 2px;
397     background-repeat:no-repeat;
398     background-color:transparent;
399 }
400
401 .x-grid3-row-collapsed .x-grid3-row-expander {
402     background-position:4px 2px;
403 }
404
405 .x-grid3-row-expanded .x-grid3-row-expander {
406     background-position:-21px 2px;
407 }
408
409 .x-grid3-row-collapsed .x-grid3-row-body {
410     display:none !important;
411 }
412
413 .x-grid3-row-expanded .x-grid3-row-body {
414     display:block !important;
415 }
416
417 /* Checkers */
418 .x-grid3-body .x-grid3-td-checker {
419     background:transparent repeat-y right;
420 }
421
422 .x-grid3-body .x-grid3-td-checker .x-grid3-cell-inner, .x-grid3-header .x-grid3-td-checker .x-grid3-hd-inner {
423     padding:0 !important;
424     height:100%;
425 }
426
427 .x-grid3-row-checker, .x-grid3-hd-checker {
428     width:100%;
429     height:18px;
430     background-position:2px 2px;
431     background-repeat:no-repeat;
432     background-color:transparent;
433 }
434
435 .x-grid3-row .x-grid3-row-checker {
436     background-position:2px 2px;
437 }
438
439 .x-grid3-row-selected .x-grid3-row-checker, .x-grid3-hd-checker-on .x-grid3-hd-checker,.x-grid3-row-checked .x-grid3-row-checker {
440     background-position:-23px 2px;
441 }
442
443 .x-grid3-hd-checker {
444     background-position:2px 1px;
445 }
446
447 .ext-border-box .x-grid3-hd-checker {
448     background-position:2px 3px;
449 }
450
451 .x-grid3-hd-checker-on .x-grid3-hd-checker {
452     background-position:-23px 1px;
453 }
454
455 .ext-border-box .x-grid3-hd-checker-on .x-grid3-hd-checker {
456     background-position:-23px 3px;
457 }
458
459 /* Numberer */
460 .x-grid3-body .x-grid3-td-numberer {
461     background:transparent repeat-y right;
462 }
463
464 .x-grid3-body .x-grid3-td-numberer .x-grid3-cell-inner {
465     padding:3px 5px 0 0 !important;
466     text-align:right;
467 }
468
469 /* Row Icon */
470
471 .x-grid3-body .x-grid3-td-row-icon {
472     background:transparent repeat-y right;
473     vertical-align:top;
474     text-align:center;
475 }
476
477 .x-grid3-body .x-grid3-td-row-icon .x-grid3-cell-inner {
478     padding:0 !important;
479     background-position:center center;
480     background-repeat:no-repeat;
481     width:16px;
482     height:16px;
483     margin-left:2px;
484     margin-top:3px;
485 }
486
487 /* All specials */
488 .x-grid3-body .x-grid3-row-selected .x-grid3-td-numberer,
489 .x-grid3-body .x-grid3-row-selected .x-grid3-td-checker,
490 .x-grid3-body .x-grid3-row-selected .x-grid3-td-expander {
491         background:transparent repeat-y right;
492 }
493
494 .x-grid3-body .x-grid3-check-col-td .x-grid3-cell-inner {
495     padding: 1px 0 0 0 !important;
496 }
497
498 .x-grid3-check-col {
499     width:100%;
500     height:16px;
501     background-position:center center;
502     background-repeat:no-repeat;
503     background-color:transparent;
504 }
505
506 .x-grid3-check-col-on {
507     width:100%;
508     height:16px;
509     background-position:center center;
510     background-repeat:no-repeat;
511     background-color:transparent;
512 }
513
514 /* Grouping classes */
515 .x-grid-group, .x-grid-group-body, .x-grid-group-hd {
516     zoom:1;
517 }
518
519 .x-grid-group-hd {
520     border-bottom: 2px solid;
521     cursor:pointer;
522     padding-top:6px;
523 }
524
525 .x-grid-group-hd div.x-grid-group-title {
526     background:transparent no-repeat 3px 3px;
527     padding:4px 4px 4px 17px;
528 }
529
530 .x-grid-group-collapsed .x-grid-group-body {
531     display:none;
532 }
533
534 .ext-ie6 .x-grid3 .x-editor .x-form-text, .ext-ie7 .x-grid3 .x-editor .x-form-text {
535     position:relative;
536     top:-1px;
537 }
538
539 .ext-ie .x-props-grid .x-editor .x-form-text {
540     position:static;
541     top:0;
542 }
543
544 .x-grid-empty {
545     padding:10px;
546 }
547
548 /* fix floating toolbar issue */
549 .ext-ie7 .x-grid-panel .x-panel-bbar {
550     position:relative;
551 }
552
553
554 /* Reset position to static when Grid Panel has been framed */
555 /* to resolve 'snapping' from top to bottom behavior. */
556 /* @forumThread 86656 */
557 .ext-ie7 .x-grid-panel .x-panel-mc .x-panel-bbar {
558     position: static;
559 }
560
561 .ext-ie6 .x-grid3-header {
562     position: relative;
563 }
564
565 /* Fix WebKit bug in Grids */
566 .ext-webkit .x-grid-panel .x-panel-bwrap{
567     -webkit-user-select:none;
568 }
569 .ext-webkit .x-tbar-page-number{
570     -webkit-user-select:ignore;
571 }
572 /* end*/
573
574 /* column lines */
575 .x-grid-with-col-lines .x-grid3-row td.x-grid3-cell {
576     padding-right:0;
577     border-right:1px solid;
578 }