/** * Table View * line height = 6rem, border included */ ul { margin: 0; padding: 0; overflow: hidden; list-style: none; } ul li { position: relative; border-bottom: 0.1rem solid #e6e6e3; color: #000; -moz-box-sizing: border-box; min-height: 6rem; } ul li.active, ul li:active { background-color: #ddf; color: #222; } ul li > a, ul li > span { display: block; text-decoration: none; outline: 0; color: #000; -moz-box-sizing: border-box; height: 6rem; font-size: 1.9rem; line-height: 6rem; padding: 0 3rem; } ul li.disabled > a { color: gray; pointer-events: none; } /* description + value on the same line */ ul li > a span { position: absolute; right: 2rem; color: #505859; } /* text ellipsis */ ul li > * { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } /* sublines */ ul li > small { position: absolute; left: 3rem; right: 3rem; top: 50%; padding-top: 0.4rem; font-size: 1.4rem; color: #505859; /* click/tap events should be caught by the element below the */ pointer-events: none; } ul li > label:not([for]) + small { right: 6rem; } /* required for empty elements like Bluetooth */ ul li > small:not(:empty) + a { line-height: 4.4rem; } /****************************************************************************** * Boolean inputs */ ul li button, ul li a.bb-button { position: relative; top: 1rem; left: 2rem; font-size: 1.7rem; line-height: 1em; width: calc(100% - 5rem); height: calc(100% - 2rem); } /* custom styles for boolean inputs (see /shared/style/switches.css) */ ul li label { text-transform: none; } ul li > label:not([for]) { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } ul li > label:not([for]) > span { left: auto; right: 2rem; } ul li > label:not([for]) ~ a { padding-right: 6rem; } /****************************************************************************** * Text inputs */ ul li p { font-size: 1.9rem; font-weight: 400; margin: 0; padding: 1rem 3rem; } ul li p + label:not([for]) { top: 2.5rem; height: calc(100% - 2.5rem); } ul li p + input[type="text"], ul li p + input[type="password"] { width: calc(100% - 6rem); margin: -1rem auto 1rem; } /****************************************************************************** * Range inputs */ ul li > label input[type="range"] { width: 80%; width: calc(100% - 6rem); margin-left: 3rem; margin-top: 2rem; } /****************************************************************************** * Select boxes */ ul li select { font-size: 1.9rem; height: 3rem; line-height: 3rem; text-align: center; } /* half-width select boxes */ ul li span select { display: inline-block; position: absolute; top: 1.5rem; right: 3rem; width: calc(50% - 2rem); } /* full-width select boxes */ ul li p + select { display: block; width: calc(100% - 15rem); margin: -1rem 3rem 1rem 12rem; } /****************************************************************************** * Progress, Meter */ ul li progress, ul li meter { display: block; width: calc(100% - 6rem); height: 3rem; margin: 2.5rem auto; } /****************************************************************************** * Definition lists */ dl > * { font-size: 1.7em; } dl dt { padding-left: 3rem; font-weight: 500; border-bottom: 0.1rem solid black; } dl dd { margin: 0; padding: 1rem 3rem; border-bottom: 0.1rem solid #e6e6e3; /* same as "ul li" */ } /****************************************************************************** * Right-to-Left layout */ /* definition lists */ html[dir="rtl"] dl dt { padding-left: inherit; padding-right: 3rem; } /* half-width select boxes */ html[dir="rtl"] ul li span select { left: 3rem; right: inherit; } /* full-width select boxes */ html[dir="rtl"] ul li p + select { margin: -1rem 12rem 1rem 3rem; } /* boolean inputs */ html[dir="rtl"] ul li button, html[dir="rtl"] ul li a.bb-button { left: inherit; right: 2rem; } html[dir="rtl"] ul li > label:not([for]) > span { left: 4rem; /* XXX we use "right: 2rem" for LTR layouts... */ right: inherit; } html[dir="rtl"] ul li > label:not([for]) ~ a { padding-left: 6rem; padding-right: 3rem; } /* description + value on the same line */ html[dir="rtl"] ul li > a span { left: 2rem; right: inherit; } /* main list items */ html[dir="rtl"] ul li > a, html[dir="rtl"] ul li > span { padding-left: inherit; padding-right: 3rem; }