2 * jQuery Mobile Framework
3 * Copyright (c) jQuery Project
4 * Dual licensed under the MIT (MIT-LICENSE.txt) or GPL (GPL-LICENSE.txt) licenses.
7 /*** less definitions ***/
12 @list-font-size-main: 44 * @unit_base;
13 @list-font-size-sub: 32 * @unit_base;
14 @list-font-size-divider: 32 * @unit_base; // NOTE: defined in dialogue group
17 @list-dialogue-font-size-main: 38 * @unit_base;
18 @list-dialogue-font-size-sub: 32 * @unit_base;
21 @list-font-weight: normal;
24 @list-li-height: 112 * @unit_base;
26 @list-li-2line-height: 128 * @unit_base;
27 @list-li-3line-height: 160 * @unit_base;
28 @list-li-top-padding: 10 * @unit_base;
29 @list-li-main-line-height: 60 * @unit_base;
30 @list-li-sub-line-height: 48 * @unit_base;
32 @list-smallicon-size: 32 * @unit_base;
33 @list-li-padding-horizontal: 16 * @unit_base;
35 @list-li-divider-height: 32 * @unit_base;
38 @list-bigicon-size: 64 * @unit_base;
39 @list-bigicon-size2: 72 * @unit_base;
41 @list-checkbox-size: 42 * @unit_base;
42 @list-progressbar-height: 16 * @unit_base;
47 @list-li-bubble-font-size: 38 * @unit_base;
48 @list-li-bubble-time-font-size: 26 * @unit_base;
49 @list-li-bubble-date-font-size: @list-li-bubble-time-font-size;
50 @list-li-bubble-corner-radius: 9 * @unit_base; // TODO: fit to 9px (picked from bg images)
52 @list-li-sub-left-width: 187 * @unit_base;
53 @list-li-main-right-padding: 187 * @unit_base;
56 @list-li-email-top-padding: 8 * @unit_base;
57 @list-li-email-subline-top-padding: 4 * @unit_base;
58 @list-li-email-sub-line-height: 40 * @unit_base;
59 @list-email-icon-width: 56 * @unit_base;
60 @list-email-icon-height: 60 * @unit_base;
62 @list-email-icon-top-padding: 16 * @unit_base;
63 @list-email-attach-icon-width: 40 * @unit_base;
64 @list-email-attach-icon-height: 40 * @unit_base;
65 @list-email-warning-icon-width: 30 * @unit_base;
66 @list-email-warning-icon-height: 30 * @unit_base;
67 @list-email-text-padding-left: 60 * @unit_base;
69 /************************/
73 counter-reset: listnumbering;
74 border-top-width: 1px;
75 border-top-style: solid;
77 li.ui-btn > .ui-btn-hastxt > .ui-btn-text.ui-btn-text-padding-right {
78 padding-right: 0 * @unit_base; // Clear default button padding-right
82 // list item separator line
83 border-bottom-width: 1px;
84 border-bottom-style: solid;
86 border-top-width: 0px;
89 &> .ui-li:not(.ui-li-divider) {
90 &:not(.ui-li-static) {
91 min-height : 112 * @unit_base;
95 &> .ui-li.ui-li-has-multiline:not(.ui-li-divider) {
96 &:not(.ui-li-static) {
97 min-height : 128 * @unit_base;
104 margin-left: -16 * @unit_base;
105 margin-right: -16 * @unit_base;
122 font-size : @list-font-size-main;
125 .ui-li.ui-field-contain {
137 font-size : @list-font-size-main;
138 min-height : 52 * @unit_base;
139 font-weight : normal;
143 display : inline-block;
152 .LESStext-ellipsis();
156 &.ui-field-contain:last-child {
157 border-bottom-width: 1px;
166 &>.ui-btn-inner.ui-btn-hastxt {
170 .ui-btn-inner a.ui-link-inherit,
172 padding-top : 30 * @unit_base;
173 padding-bottom : 30 * @unit_base;
174 padding-left : 16 * @unit_base;
175 padding-right : 16 * @unit_base;
178 white-space: normal; // default: 1line
181 .ui-btn-inner a.ui-link-inherit {
182 .LESStext-no-ellipsis();
189 margin-top : -40 * @unit_base;
191 display : inline-block;
194 right : 16 * @unit_base;
198 [data-role="button"] {
201 right : 16 * @unit_base;
210 margin-top : -30 * @unit_base;
212 left : 16 * @unit_base;
214 width : 60 * @unit_base;
215 height : 60 * @unit_base;
218 padding : 10 * @unit_base 10 * @unit_base 10 * @unit_base 10 * @unit_base;
219 line-height : 40 * @unit_base;
224 left : 5 * @unit_base;
234 margin-top : -36 * @unit_base;
237 left : 16 * @unit_base;
241 left : 92 * @unit_base;
245 right : 16 * @unit_base;
249 .ui-li-color-bar + img.ui-li-bigicon:nth-child(2) {
250 left : 16 * @unit_base;
255 width : 12 * @unit_base;
256 height : 20 * @unit_base;
258 top : 0 * @unit_base;
259 left : 0 * @unit_base;
261 background-color : rgba(0, 0, 0, 1);
265 li.ui-li-thumbnail-right {
266 img.ui-li-bigicon.ui-li-thumb {
268 right : 16 * @unit_base;
272 .ui-li.ui-li-has-multiline {
273 .ui-btn-inner a.ui-link-inherit,
275 padding-top : 10 * @unit_base;
276 padding-bottom : 58 * @unit_base;
278 min-height : 60 * @unit_base;
282 .LESStext-no-ellipsis();
283 padding-right : 16 * @unit_base; /* ellipsis for normal text */
287 /********************************************/
288 /************ Add ellipsis *****************/
289 /********************************************/
290 .ui-li.ui-li-text-ellipsis {
291 .ui-btn-inner a.ui-link-inherit {
292 .LESStext-ellipsis();
296 .LESStext-ellipsis();
300 .LESStext-ellipsis();
303 /********************************************/
304 /*************** Divider ********************/
305 /********************************************/
309 counter-reset: listnumbering;
311 font-size: @list-font-size-divider;
312 padding-left: 16 * @unit_base;
313 padding-top: 8 * @unit_base;
314 padding-bottom: 8 * @unit_base;
317 .ui-listview .ui-li-divider {
318 &[data-style="dialogue"] {
319 height: 32 * @unit_base;
322 .LESSdialogue-divider;
323 background : @color_bg;
326 &[data-style="check"] {
327 height: 60 * @unit_base;
329 padding-bottom : 0px;
331 padding-left : 92 * @unit_base;
332 line-height : 60 * @unit_base;
335 &[data-style="checkexpandable"] {
336 height: 60 * @unit_base;
338 padding-bottom : 0px;
340 padding-left : 92 * @unit_base;
341 line-height : 60 * @unit_base;
344 &[data-style="expandable"] {
345 height: 60 * @unit_base;
347 padding-bottom : 0px;
349 line-height : 60 * @unit_base;
353 .ui-divider-expand-div {
356 width : 98 * @unit_base;
357 height : 42 * @unit_base;
358 top : 10 * @unit_base;
361 border-left-width : 1px;
362 border-left-style : solid;
363 border-left-color : @color_list_divider_expand_div;
367 .ui-li-has-thumb:not(.ui-li-thumbnail-right) {
368 .ui-btn-inner a.ui-link-inherit,
370 min-height: 60 * @unit_base;
371 padding-left: 104 * @unit_base;
374 padding-left: 104 * @unit_base;
375 padding-right: 16 * @unit_base; /* ellipsis for sub text */
381 .ui-btn-inner a.ui-link-inherit,
383 min-height: 60 * @unit_base;
384 padding-left: 92 * @unit_base;
387 padding-left: 92 * @unit_base;
391 .ui-li-has-thumb.ui-li-has-checkbox,
392 .ui-li-has-thumb.ui-li-has-radio {
393 .ui-btn-inner a.ui-link-inherit,
395 min-height: 60 * @unit_base;
396 padding-left: 180 * @unit_base;
400 padding-left: 180 * @unit_base;
404 .ui-li.ui-li-has-right-circle-btn {
406 padding-right : 96 * @unit_base;
410 .ui-li.ui-li-has-right-btn {
412 padding-right : 158 * @unit_base;
416 .ui-li.ui-li-thumbnail-right {
418 padding-right : 104 * @unit_base;
421 .ui-li.ui-li-static.ui-li-has-right-circle-btn {
422 padding-right : 96 * @unit_base;
425 .ui-li.ui-li-static.ui-li-has-right-btn {
426 padding-right : 158 * @unit_base;
429 .ui-li.ui-li-static.ui-li-thumbnail-right {
430 padding-right : 104 * @unit_base;
434 .ui-btn-inner a.ui-link-inherit,
449 .LESStext-ellipsis();
457 max-height: @list-bigicon-size2;
458 max-width: @list-bigicon-size2;
461 .ui-listview * .ui-btn-inner > .ui-btn > .ui-btn-inner {
469 font-size: @font_size_list_sub_text;
473 /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
474 /* ~~~~~~~~~~~~~~ NEW LIST STYLE ~~~~~~~~~ */
475 /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
479 font-size: @font_size_list_sub_text;
480 color: @color_list_sub_text_default;
483 right : 16 * @unit_base;
484 top : 16 * @unit_base;
487 .LESStext-ellipsis();
491 width: @list-smallicon-size;
492 height: @list-smallicon-size;
493 margin: 0 @list-li-padding-horizontal 0 @list-li-padding-horizontal;
500 font-size: @font_size_list_sub_text;
501 color: @color_list_sub_text_default;
504 right : 16 * @unit_base;
505 top : 16 * @unit_base;
508 .LESStext-ellipsis();
511 width: @list-smallicon-size;
512 height: @list-smallicon-size;
513 margin: 0 0 0 @list-li-padding-horizontal;
517 li:not(.ui-li-has-multiline) .ui-li-text-sub {
519 right : 16 * @unit_base;
520 top: 22 * @unit_base;
523 .ui-li-has-multiline .ui-li-text-sub {
528 left : 16 * @unit_base;
529 top: 70 * @unit_base;
533 .LESStext-ellipsis();
536 .ui-li-has-multiline.ui-li-has-right-btn {
544 .ui-li-has-multiline.ui-li-static.ui-li-has-right-btn {
550 .ui-li-icon-sub-right,
554 width: @list-smallicon-size;
555 height: @list-smallicon-size;
558 .ui-li-icon-sub-right {
559 right : 16 * @unit_base;
568 &> li.ui-li-dialogue {
569 margin-left: @style_list_li_dialogue_margin_left;
570 margin-right : @style_list_li_dialogue_margin_left;
571 border-left: @style_list_li_dialogue_border_left_width @color_dialogue_editor_border solid;
572 //margin-left: @style_list_li_dialogue_margin_left;
573 border-top-width: 0px;
575 .LESSdialogue-border-style;
578 &> li.ui-li-dialogue.ui-body-s,
579 &> li.ui-li-dialogue.ui-btn-hover-up-s:not(.ui-btn-down-s),
580 &> li.ui-li-dialogue.ui-btn-up-s {
581 &:not(.ui-li-expanded){
582 background : @color_list_dialogue_bg;
585 &> li.ui-li-dialogue.ui-li-expanded {
586 padding-left : 44 * @unit_base;
587 min-height : 52 * @unit_base;
591 &> li.ui-li-dialogue.ui-li-divider {
592 height: 32 * @unit_base;
596 &> li.ui-li-group-title {
597 padding-top : 32 * @unit_base;
600 &> li.ui-li-group-title span {
601 padding-left : 16 * @unit_base;
603 &> li.ui-li-dialogue-divider {
604 .LESSdialogue-divider;
617 min-width: 160 * @unit_base;
618 min-height: 160 * @unit_base;
622 word-wrap: break-word;
623 .LESSborder-radius-topright(@list-li-bubble-corner-radius);
624 .LESSborder-radius-bottomright(@list-li-bubble-corner-radius);
625 font-size: @list-li-bubble-font-size;
627 font-size: @list-li-bubble-font-size;
629 //margin: 12px 20% 12px 0%;
630 margin-top: 12 * @unit_base;
631 margin-bottom: 12 * @unit_base;
636 padding: 16px 22px 16px 16px;
638 .ui-li-bubble-right {
639 word-wrap: break-word;
640 .LESSborder-radius-topleft(@list-li-bubble-corner-radius);
641 .LESSborder-radius-bottomleft(@list-li-bubble-corner-radius);
642 margin: 12px 0% 12px 20%;
643 padding: 16px 16px 16px 22px;
648 height: 40 * @unit_base;
649 font-size: @list-li-bubble-date-font-size;
650 margin: 12px 0%; // no horizontal margin
653 text-align: @style_list_bubble_date_text_align;
655 span.ui-li-bubble-time {
657 font-size: @list-li-bubble-time-font-size;
658 display: inline-block;
662 // Expandable list animation
664 @-webkit-keyframes ui-expand-show {
666 -webkit-transform-origin: 0% 0%;
667 -webkit-transform: rotateX(90deg) skewX(30deg) translateZ(0);
669 -webkit-transform-origin: 0% 0%;
670 -webkit-transform: rotateX(0deg) skewX(0deg) translateZ(0);
676 .ui-li-expandable-shown {
678 .LESSimg-expanded-icon;
680 .ui-li-expandable-hidden {
682 .LESSimg-expand-icon;
687 .ui-li-expand-transition-show {
689 -webkit-animation: ui-expand-show 0.4s 1 ease-out;
691 .ui-li-expand-transition-hide {
693 height: 0px !important;
694 min-height: 0px !important;
698 -webkit-transition: all 0.2s ease;
699 -moz-transition: all 0.2s ease;
700 -o-transition: all 0.2s ease;
701 -ms-transition: all 0.2s ease;
702 transition: all 0.2s ease;
707 .LESSimg-expand-icon(@right:@list-li-padding-horizontal, @size:@list-bigicon-size) {
709 background-image: url(images/00_list_expand_closed.png);
710 background-size: 100%;
713 width: 64 * @unit_base;
714 height: 64 * @unit_base;
715 margin-top: -(@size/2);
716 right: 16 * @unit_base;
720 .LESSimg-expanded-icon(@right:@list-li-padding-horizontal, @size:@list-bigicon-size) {
721 .ui-li-expanded-icon {
722 background-image: url(images/00_list_expand_opened.png);
723 background-size: 100%;
726 width: 64 * @unit_base;
727 height: 64 * @unit_base;
728 margin-top: -(@size/2);
729 right: 16 * @unit_base;