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: 22 * @unit_base;
13 @list-font-size-sub: 16 * @unit_base;
14 @list-font-size-divider: 16 * @unit_base; // NOTE: defined in dialogue group
16 @list-font-weight: normal;
18 @list-smallicon-size: 17 * @unit_base;
19 @list-li-padding-horizontal: 8 * @unit_base;
21 @list-bigicon-size: 64 * @unit_base;
22 @list-bigicon-size2: 72 * @unit_base;
25 @list-li-bubble-font-size: 19 * @unit_base;
26 @list-li-bubble-time-font-size: 11 * @unit_base;
27 @list-li-bubble-date-font-size: 16 * @unit_base;
29 @list-li-sub-left-width: 187 * @unit_base;
30 @list-li-main-right-padding: 187 * @unit_base;
33 @list-li-email-top-padding: 8 * @unit_base;
34 @list-li-email-subline-top-padding: 4 * @unit_base;
35 @list-li-email-sub-line-height: 40 * @unit_base;
36 @list-email-icon-width: 56 * @unit_base;
37 @list-email-icon-height: 60 * @unit_base;
39 @list-email-icon-top-padding: 16 * @unit_base;
40 @list-email-attach-icon-width: 40 * @unit_base;
41 @list-email-attach-icon-height: 40 * @unit_base;
42 @list-email-warning-icon-width: 30 * @unit_base;
43 @list-email-warning-icon-height: 30 * @unit_base;
44 @list-email-text-padding-left: 60 * @unit_base;
46 /************************/
50 counter-reset: listnumbering;
52 border-top-color: @color_list_border_bottom;
54 li.ui-btn > .ui-btn-hastxt > .ui-btn-text.ui-btn-text-padding-right {
55 padding-right: 0 * @unit_base; // Clear default button padding-right
59 border-left-width : 0px;
60 border-right-width : 0px;
62 border-top-width: 0px;
65 border-bottom-width: 1px;
66 border-bottom-style: solid;
67 border-bottom-color: @color_list_border_bottom;
68 margin-left : 13 * @unit_base;
69 margin-right : 13 * @unit_base;
74 background-color: @color_bg;
76 border-bottom-width: 1px;
77 border-bottom-style: solid;
78 border-bottom-color: @color_list_border_bottom;
79 margin-left : 13 * @unit_base;
80 margin-right : 13 * @unit_base;
84 &> .ui-li:not(.ui-li-divider) {
85 &:not(.ui-li-static) {
86 min-height : 55 * @unit_base;
90 &> .ui-li.ui-li-has-multiline:not(.ui-li-divider) {
91 &:not(.ui-li-static) {
92 min-height : 64 * @unit_base;
96 li.ui-btn-up-s, li.ui-btn-hover-s {
98 background-color: @color_bg;
103 background-color: @color_list_press;
106 /* listview: fonts for li with a link */
107 li.ui-btn-up-s > .ui-li > .ui-btn-text > a.ui-link-inherit,
108 li.ui-btn-hover-s > .ui-li > .ui-btn-text > a.ui-link-inherit {
109 color: @color_list_main_text_unfocus;
112 li.ui-btn-down-s > .ui-li > .ui-btn-text > a.ui-link-inherit {
113 color: @color_list_main_text_focus;
119 margin-left: -16 * @unit_base;
120 margin-right: -16 * @unit_base;
136 font-size : @list-font-size-main;
139 .ui-li.ui-field-contain {
151 font-size : @list-font-size-main;
152 font-weight : normal;
156 display : inline-block;
165 .LESStext-ellipsis();
169 &.ui-field-contain:last-child {
170 border-bottom-width: 1px;
179 &>.ui-btn-inner.ui-btn-hastxt {
183 .ui-btn-inner a.ui-link-inherit,
185 padding-top : 15 * @unit_base;
186 padding-bottom : 15 * @unit_base;
189 white-space: normal; // default: 1line
191 border-left-width : 0px;
192 border-right-width : 0px;
195 .ui-btn-inner a.ui-link-inherit {
196 .LESStext-no-ellipsis();
202 margin-top : -20 * @unit_base;
204 display : inline-block;
210 .ui-toggleswitch.ui-toggleswitch-image-style {
212 margin-top : -17 * @unit_base;
218 [data-role="button"] {
230 margin-top : -15 * @unit_base;
232 left : -4 * @unit_base;
234 width : 30 * @unit_base;
235 height : 30 * @unit_base;
238 line-height : 20 * @unit_base;
243 left : 5 * @unit_base;
247 label.ui-btn-icon_only {
257 width : 35 * @unit_base;
258 height : 35 * @unit_base;
261 margin-top : -18 * @unit_base;
268 left : 36 * @unit_base;
272 right : 16 * @unit_base;
276 .ui-li-color-bar + img.ui-li-bigicon:nth-child(2) {
282 width : 3 * @unit_base;
283 height : 65 * @unit_base;
285 top : 0 * @unit_base;
286 left : -13 * @unit_base;
288 background-color : rgba(0, 0, 0, 1);
292 li.ui-li-thumbnail-right {
293 img.ui-li-bigicon.ui-li-thumb {
297 width : 51 * @unit_base;
298 height : 51 * @unit_base;
300 margin-top : -25 * @unit_base;
304 .ui-li.ui-li-has-multiline {
305 .ui-btn-inner a.ui-link-inherit,
307 padding-top : 7 * @unit_base;
308 padding-bottom : 28 * @unit_base;
312 .LESStext-no-ellipsis();
313 padding-right : 16 * @unit_base; /* ellipsis for normal text */
317 /********************************************/
318 /************ Add ellipsis *****************/
319 /********************************************/
320 .ui-li.ui-li-text-ellipsis {
321 .ui-btn-inner a.ui-link-inherit {
322 .LESStext-ellipsis();
326 .LESStext-ellipsis();
330 .LESStext-ellipsis();
334 /********************************************/
335 /*************** Edit Field *****************/
336 /********************************************/
342 outline-color : @color_list_bg;
343 font-size : 23 * @unit_base;
347 padding-bottom : 0px;
351 /********************************************/
352 /*************** Divider ********************/
353 /********************************************/
355 .ui-listview li.ui-li-divider {
356 background: @color_list_divider_bg;
357 color: @color_list_divider_text;
359 border-bottom-width : 0px;
360 border-top-width : 0px;
364 counter-reset: listnumbering;
367 height: 38 * @unit_base;
369 font-size : @list-font-size-divider;
370 &>.ui-btn-inner>.ui-btn-text { // For buttonMarkup-ed dividers
371 font-size : @list-font-size-divider;
376 margin-top: 0 * @unit_base;
379 font-size : @list-font-size-divider;
380 .ui-btn-inner.ui-btn-hastxt {
386 top : 5 * @unit_base;
387 height : 18 * @unit_base;
388 padding-right : 10 * @unit_base;
394 margin-left : 12 * @unit_base;
395 margin-right : 12 * @unit_base;
401 top : 5 * @unit_base;
402 height : 18 * @unit_base;
403 padding-right : 10 * @unit_base;
406 &[data-style="dialogue"] {
407 height: 20 * @unit_base;
410 padding-top : 20 * @unit_base;
411 padding-bottom : 0 * @unit_base;
412 padding-left : 10 * @unit_base;
414 margin-left : 4 * @unit_base;
415 margin-right : 4 * @unit_base;
418 font-size : 16 * @unit_base;
420 color : @color_dialogue_main_text;
421 background : @color_list_bg;
424 &[data-style="check"] {
425 height: 38 * @unit_base;
427 padding-bottom : 0px;
438 width : 32 * @unit_base;
439 height : 32 * @unit_base;
440 background : @color_list_bg;
445 padding-left : 37 * @unit_base;
449 .ui-divider-normal-line {
450 display : inline-block;
453 top : 23 * @unit_base;
455 height : 2 * @unit_base;
457 background : @color_list_divider_text;
461 background : @color_list_divider_text;
462 color : @color_list_bg;
464 .ui-divider-normal-line {
465 background : @color_list_bg;
470 background : @color_list_divider_text;
475 + li.ui-li-dialogue {
476 border-top-left-radius : 3px;
477 border-top-right-radius : 3px;
481 .ui-divider-expand-div {
484 width : 98 * @unit_base;
485 height : 42 * @unit_base;
486 top : 10 * @unit_base;
489 border-left-width : 1px;
490 border-left-style : solid;
491 border-left-color : @color_list_divider_expand_div;
494 .ui-li-has-thumb:not(.ui-li-thumbnail-right) {
495 .ui-btn-inner a.ui-link-inherit,
497 padding-left: 45 * @unit_base;
500 padding-left: 45 * @unit_base;
501 padding-right: 0px; /* ellipsis for sub text */
507 .ui-btn-inner a.ui-link-inherit,
509 padding-left: 36 * @unit_base;
512 padding-left: 36 * @unit_base;
516 .ui-li-has-thumb.ui-li-has-checkbox,
517 .ui-li-has-thumb.ui-li-has-radio {
518 .ui-btn-inner a.ui-link-inherit,
520 padding-left: 78 * @unit_base;
524 padding-left: 78 * @unit_base;
528 .ui-li.ui-li-has-right-circle-btn {
530 padding-right : 48 * @unit_base;
534 .ui-li.ui-li-has-right-btn:not(.ui-swipelist-item) {
536 padding-right : 79 * @unit_base;
540 .ui-li.ui-li-thumbnail-right {
542 padding-right : 52 * @unit_base;
545 .ui-li.ui-li-static.ui-li-has-right-circle-btn {
546 padding-right : 48 * @unit_base;
549 .ui-li.ui-li-static.ui-li-has-right-btn:not(.ui-swipelist-item) {
550 padding-right : 79 * @unit_base;
553 .ui-li.ui-li-static.ui-li-thumbnail-right {
554 padding-right : 52 * @unit_base;
558 .ui-btn-inner a.ui-link-inherit,
573 .LESStext-ellipsis();
581 max-height: @list-bigicon-size2;
582 max-width: @list-bigicon-size2;
585 .ui-listview * .ui-btn-inner > .ui-btn > .ui-btn-inner {
593 font-size: 16 * @unit_base;
597 /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
598 /* ~~~~~~~~~~~~~~ NEW LIST STYLE ~~~~~~~~~ */
599 /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
603 font-size: 16 * @unit_base;
604 color: @color_list_sub_text_default;
608 top : 20 * @unit_base;
611 .LESStext-ellipsis();
615 width: @list-smallicon-size;
616 height: @list-smallicon-size;
617 margin: 0 @list-li-padding-horizontal 0 @list-li-padding-horizontal;
624 font-size: 16 * @unit_base;
625 color: @color_list_sub_text_default;
629 top : 16 * @unit_base;
632 .LESStext-ellipsis();
635 width: @list-smallicon-size;
636 height: @list-smallicon-size;
637 margin: 0 0 0 @list-li-padding-horizontal;
641 li:not(.ui-li-has-multiline) .ui-li-text-sub {
643 right : 16 * @unit_base;
644 top: 22 * @unit_base;
648 .ui-li-has-multiline .ui-li-text-sub {
654 top: 35 * @unit_base;
658 .LESStext-ellipsis();
661 .ui-li-has-multiline.ui-li-has-right-btn {
669 .ui-li-has-multiline.ui-li-has-right-btn.ui-li-has-thumb {
677 .ui-li-has-multiline.ui-li-static.ui-li-has-right-btn {
683 .ui-li-has-multiline.ui-li-static.ui-li-has-right-btn.ui-li-has-thumb {
689 .ui-li-icon-sub-right,
693 width: @list-smallicon-size;
694 height: @list-smallicon-size;
697 .ui-li-icon-sub-right {
698 right : 8 * @unit_base;
707 &> li.ui-li-dialogue {
708 margin-left: 4 * @unit_base;
709 margin-right : 4 * @unit_base;
710 padding-left : 10 * @unit_base;
711 padding-right : 10 * @unit_base;
713 border-style : solid;
714 border-color : @color_dialogue_border_right;
724 border-top-width : 1px;
725 border-top-left-radius : 3px;
726 border-top-right-radius : 3px;
729 border-bottom-left-radius : 3px;
730 border-bottom-right-radius : 3px;
734 margin-left : 6 * @unit_base;
737 [data-role="button"]:last-child {
738 margin-right : 10 * @unit_base;
742 &> li.ui-li-dialogue.ui-body-s,
743 &> li.ui-li-dialogue.ui-btn-hover-up-s:not(.ui-btn-down-s),
744 &> li.ui-li-dialogue.ui-btn-up-s {
745 &:not(.ui-li-expanded){
746 background : @color_list_dialogue_bg;
749 &> li.ui-li-dialogue.ui-li-expanded {
750 padding-left : 26 * @unit_base;
751 background : @color_list_expanded_bg;
754 &> li.ui-li-dialogue.ui-li-divider {
755 height: 32 * @unit_base;
759 &> li.ui-li-group-title {
760 padding-top : 32 * @unit_base;
763 &> li.ui-li-group-title span {
764 padding-left : 16 * @unit_base;
767 &> li.ui-li-dialogue-divider {
768 padding-top : 20 * @unit_base;
769 padding-bottom : 0 * @unit_base;
770 padding-left : 10 * @unit_base;
772 margin-left : 4 * @unit_base;
773 margin-right : 4 * @unit_base;
775 background : @color_list_dialogue_bg;
776 font-size : 16 * @unit_base;
778 color : @color_dialogue_main_text;
787 &.ui-li-bubble-receive,
788 &.ui-li-bubble-left {
789 color: @color_list_bubble_receive_text;
790 > .ui-li-bubble-time {
791 color: @color_list_bubble_time_receive_text;
795 &.ui-li-bubble-right {
796 color: @color_list_bubble_sent_text;
797 > .ui-li-bubble-time {
798 color: @color_list_bubble_time_sent_text;
802 color: @color_list_bubble_sos_text;
803 > .ui-li-bubble-time {
804 color: @color_list_bubble_time_sos_text;
807 &.ui-li-bubble-date {
808 background-color: @color_list_bubble_date_bg;
809 color: @color_list_bubble_date_text;
814 span.ui-li-bubble-time {
818 .ui-li-bubble-receive,
823 display: inline-block;
824 background-clip: padding-box;
826 word-wrap: break-word;
827 font-size: @list-li-bubble-font-size;
829 font-size: @list-li-bubble-font-size;
833 min-width: 160 * @unit_base;
834 min-height: 160 * @unit_base;
837 .ui-li-bubble-receive,
842 border-image-source: url(images/00_messagebubble_bg_receive.9.png);
843 border-image-slice: 57 14 21 48 fill;
844 border-image-width: auto;
845 padding: 9px 14px 21px 48px;
847 > .ui-li-bubble-time {
849 display: inline-block;
850 bottom: 8 * @unit_base;
852 font-size: @list-li-bubble-time-font-size;
856 .ui-li-bubble-right {
860 border-image-source: url(images/00_messagebubble_bg_sent.9.png);
861 border-image-slice: 55 47 20 13 fill;
862 border-image-width: auto;
863 padding: 9px 47px 20px 13px;
865 > .ui-li-bubble-time {
867 display: inline-block;
868 bottom: 8 * @unit_base;
870 font-size: @list-li-bubble-time-font-size;
876 height: 24 * @unit_base;
877 background-image: url(images/00_messagebubble_date_bg.png);
878 background-repeat: repeat-x;
879 background-position: center center;
880 font-size: @list-li-bubble-date-font-size;
881 margin: 20 * @unit_base 6 * @unit_base;
882 border: 0px none red;
884 padding-top: 0.5em; // vertical text alignment to center
887 display: inline-block;
888 background-color: @color_bg;
890 padding-right: 0.5em;
895 // Expandable list animation
898 background-color: @color_list_expandable_expanded_bg;
900 &> .ui-li-expanded .ui-li-expanded { // 3rd~ more depth
901 background-color: @color_list_expandable_expanded_bg;
903 .ui-li-expandable-shown {
905 .LESSimg-expanded-icon;
907 .ui-li-expandable-hidden {
909 .LESSimg-expand-icon;
914 .ui-li-expand-transition-show {
916 -webkit-transition: all 0.2s ease;
917 -moz-transition: all 0.2s ease;
918 -o-transition: all 0.2s ease;
919 -ms-transition: all 0.2s ease;
920 transition: all 0.2s ease;
922 .ui-li-expand-transition-hide {
924 height: 0px !important;
925 min-height: 0px !important;
928 border-top: 0px !important;
929 border-bottom: 0px !important;
930 -webkit-transition: all 0.2s ease;
931 -moz-transition: all 0.2s ease;
932 -o-transition: all 0.2s ease;
933 -ms-transition: all 0.2s ease;
934 transition: all 0.2s ease;
939 .LESSimg-expand-icon(@right:@list-li-padding-horizontal, @size:37*@unit_base) {
941 background-image: url(images/00_button_expand_closed.png);
942 background-size: 100%;
945 width: 37 * @unit_base;
946 height: 37 * @unit_base;
947 margin-top: -(@size/2);
948 right: 18 * @unit_base;
952 .LESSimg-expanded-icon(@right:@list-li-padding-horizontal, @size:37*@unit_base) {
953 .ui-li-expanded-icon {
954 background-image: url(images/00_button_expand_opened.png);
955 background-size: 100%;
958 width: 37 * @unit_base;
959 height: 37 * @unit_base;
960 margin-top: -(@size/2);
961 right: 18 * @unit_base;