X-Git-Url: https://git-public.kairo.at/?p=lantea.git;a=blobdiff_plain;f=style%2Flantea.css;h=64ee62ff1ef49e1702c434bfb0161b45a2117201;hp=c3233cfb5fb552c2010f5313849a58dfc2b61583;hb=e1c3d337e88cb06b988d97e060938466a9815634;hpb=ac6286bd2c43fe4e522c5a1ab732902aa8935cbc diff --git a/style/lantea.css b/style/lantea.css index c3233cf..64ee62f 100644 --- a/style/lantea.css +++ b/style/lantea.css @@ -12,31 +12,43 @@ h1 { display: none; } -#dialogArea, -.overlayArea { +.hidden { + display: none; +} + +.debugHide { + display: none; +} + +/* Main window UI areas */ +#map, #track { + position: fixed; + border: 0; + top: 0; + left: 0; + right: 0; + bottom: 0; +} + +#map { + z-index: 1; +} + +#track { + z-index: 3; +} + +.autoFade { position: absolute; z-index: 5; transition-property: opacity; transition-duration: .2s; } -#dialogArea.hidden, -.overlayArea.hidden { +.autoFade.hidden { opacity: 0; transition-duration: 1s; -} - -#dialogArea:-moz-system-metric(touch-enabled), -.overlayArea:-moz-system-metric(touch-enabled) { - font-size: 3mozmm; -} - -#dialogArea input[type="button"]:-moz-system-metric(touch-enabled), -#dialogArea input[type="text"]:-moz-system-metric(touch-enabled), -#dialogArea select:-moz-system-metric(touch-enabled), -.overlayArea input[type="button"]:-moz-system-metric(touch-enabled), -.overlayArea select:-moz-system-metric(touch-enabled) { - font-size: 3mozmm; + display: block; } #menuArea { @@ -51,48 +63,52 @@ h1 { text-align: center; } -#fullscreenArea { - right: 1%; - bottom: 2em; - text-align: center; +.autoFade > input[type="button"], +.autoFade > .controlButton { + font-size: 1.2em; + font-weight: bold; + width: 2em; + height: 2em; + border-radius: 2em; + background-color: rgba(255, 255, 255, .25); + background-image: radial-gradient(circle 1.5em, #FFFFFF, transparent); + color: #0000FF; + border: none; + padding: 0; + margin: 0; } -#zoomLevel { - background-color: rgba(255, 255, 255, .8); - border-radius: 3px; - padding: 0 3px; +#zoomArea > input[type="button"] { + border: 2px solid #0000FF; } -#settingsArea, -#trackArea { - display: none; +.autoFade > input[type="button"]:hover, +.autoFade > .controlButton:hover { background-color: rgba(255, 255, 255, .8); - border: 0; - border-radius: 5px; } -#settingsArea > legend, -#trackArea > legend { - display: none; - background-color: rgba(255, 255, 255, .8); - border-radius: 3px; +.autoFade > input[type="button"]:active, +.autoFade > .controlButton:active { + background-color: rgba(255, 255, 127, .8); } -#map, #track { - position: fixed; - border: 0; - top: 0; - left: 0; - right: 0; - bottom: 0; +.autoFade > input[type="button"]:focus, +.autoFade > .controlButton:focus { + background-color: rgba(255, 255, 255, .5); } -#map { - z-index: 1; +#fullscreenArea { + right: 1%; + bottom: 2em; + text-align: center; } -#track { - z-index: 3; +#zoomLevel { + /* background-color: rgba(255, 255, 255, .8); */ + background-image: radial-gradient(circle 1.5em, #FFFFFF, transparent); + border-radius: .5em; + padding: .5em .2em; + margin: 2px 0; } #action { @@ -110,20 +126,11 @@ h1 { vertical-align: text-bottom; } -.debugHide { - display: none; -} - -.settingsSubTitle { - margin: .5em 0 0; - font-weight: bold; -} - #copyright { bottom: 5px; right: .5em; margin: 0; - font-size: small; + font-size: .8em; opacity: .66; z-index: 2; background-color: rgba(255, 255, 255, 1); @@ -133,13 +140,283 @@ h1 { #copyright.hidden { opacity: 0; + display: block; +} + +.overlayArea:-moz-system-metric(touch-enabled), +.menuDrawer:-moz-system-metric(touch-enabled) { + font-size: 3mozmm; +} + +.overlayArea input[type="button"], +.overlayArea button, +.overlayArea select, +.menuDrawer input[type="button"], +.menuDrawer button, +.menuDrawer input[type="text"], +.menuDrawer input[type="number"], +.menuDrawer select { + font-size: inherit; +} + +/* Menu Drawers */ +.menuDrawer { + position: absolute; + top: 0; + bottom: 0; + overflow: auto; + transform: translateX(calc(-40ch - 1ch)); /* account for padding */ + width: 40ch; + max-width: 95%; /* make sure we don't overflow the screen */ + border: 0; + padding: 0 .5ch; /* account for legend */ + margin: 0; + z-index: 10; + transition-property: transform; + transition-duration: 1s; + transition-timing-function: ease; +} + +.menuDrawer:not(.hidden) { + transform: translateX(0); +} + +@media screen and (max-width: 330px) { + .menuDrawer { + left: calc(-300px - 1ch); /* account for padding */ + width: 300px; + } +} + +.menuDrawer p { + margin: .5em 0; +} + +/* Menu title */ +.menuDrawer > h2 { + font-size: 1.2em; + font-weight: bold; + margin: .5em 0; + background-color: #CCCCCC; + color: #404040; + border-radius: 3px; + padding: 2px; +} + +.menuDrawer > h2 > img { + vertical-align: text-top; + height: 1.2em; +} + +/* For optical conveniece, display an "x" for closing. */ +.menuDrawer > h2:after { + content: '\00D7'; /* multiplication sign */ + display: inline-block; + vertical-align: text-top; + float: right; + margin-top: 0; + margin-right: .2em; + font-size: .75em; +} + +.dialogHelp { + margin: .5em 0; + font-size: .8em; + opacity: .66; +} + +#trackData { + margin: 0; +} + +#trackDialogArea { + border-top: 2px solid; + border-bottom: 2px solid; + padding: 3px 0; +} + +#uploadDesc { + max-width: 95%; +} + +/* Secondary UI: menu drawers, full screen overlays, etc. */ +.secondaryUI { + background-color: rgba(15, 15, 15, .9); + color: #CCCCCC; +} + +/* Custom checkbox design */ +.secondaryUI input[type="checkbox"] { + display: none; +} + +.secondaryUI input[type="checkbox"] + label:before { + content: '\00A0'; /* non-breaking space */ + display: inline-block; + width: 1.2em; + height: 1.2em; + margin-right: .3em; + text-align: center; + vertical-align: middle; + background-color: rgba(204, 204, 204, .2); + border: 1px solid #CCCCCC; + border-radius: 3px; +} + +.secondaryUI input[type="checkbox"]:hover + label:before { + background-color: rgba(204, 204, 204, .4); + border: 1px solid #FFFFFF; +} +.secondaryUI input[type="checkbox"]:hover + label { + color: #FFFFFF; + position:relative; + height: 1.2em; +} + +.secondaryUI input[type="checkbox"]:active + label:before { + background-color: rgba(204, 204, 255, .3); + border: 1px solid #FFCCAA; +} +.secondaryUI input[type="checkbox"]:active + label { + color: #FFCCAA; +} + +.secondaryUI input[type="checkbox"]:checked + label:before { + content: '\2714'; /* tick mark */ +} + +/* Custom button design */ +.secondaryUI input[type="button"], +.secondaryUI button { + text-align: center; + vertical-align: middle; + background-image: none; + background-color: rgba(204, 204, 204, .2); + color: #CCCCCC; + padding: 1px .5em; + border: 1px solid #CCCCCC; + border-radius: 3px; +} + +.secondaryUI input[type="button"]:disabled, +.secondaryUI button:disabled { + background-color: rgba(204, 204, 204, .1); + color: rgba(204, 204, 204, .5); + border: 1px solid rgba(255, 255, 255, .5); +} + +.secondaryUI input[type="button"]:not(:disabled):hover, +.secondaryUI button:not(:disabled):hover { + background-color: rgba(204, 204, 204, .4); + border: 1px solid #FFFFFF; +} + +.secondaryUI input[type="button"]:not(:disabled):active, +.secondaryUI button:not(:disabled):active { + background-color: rgba(204, 204, 255, .3); + color: #FFCCAA; + padding-top: 2px; + padding-right: calc(.5em - 1px); + padding-bottom: 0; + padding-left: calc(.5em + 1px); +} + +/* Custom select design */ +.secondaryUI select { + text-align: left; + vertical-align: middle; + background-image: none; + background-color: rgba(204, 204, 204, .2); + color: #CCCCCC; + padding: 0 .5em; + border: 1px solid #CCCCCC; + border-radius: 3px; +} + +.secondaryUI select:hover { + background-color: rgba(204, 204, 204, .4); + border: 1px solid #FFFFFF; +} + +.secondaryUI select:active { + background-color: rgba(204, 204, 255, .3); + color: #FFCCAA; +} + +.secondaryUI option:checked:not(:hover) { + background-color: rgba(204, 204, 204, .1); +} + +.secondaryUI option:hover { + background-color: #CCCCCC; + color: #404040; +} + +/* Custom textbox design */ +.secondaryUI input[type="text"], +.secondaryUI input[type="number"] { + font-size: 1em; + vertical-align: middle; + background-image: none; + background-color: rgba(204, 204, 204, .7); + color: #404040; + padding: 1px .5em; + border: 1px solid #CCCCCC; + border-radius: 3px; +} + +.secondaryUI input[type="text"] { + text-align: left; } +.secondaryUI input[type="number"] { + text-align: right; +} + +.secondaryUI input[type="text"]:disabled, +.secondaryUI input[type="number"]:disabled { + background-color: rgba(204, 204, 204, .1); + color: rgba(204, 204, 204, .5); + border: 1px solid rgba(255, 255, 255, .5); +} + +.secondaryUI input[type="text"]:not(:disabled):hover, +.secondaryUI input[type="number"]:not(:disabled):hover { + border: 1px solid #FFFFFF; +} + +.secondaryUI input[type="text"]:not(:disabled):focus, +.secondaryUI input[type="number"]:not(:disabled):focus { + background-color: rgba(204, 204, 255, .8); + border: 1px solid #FFFFFF; + color: #202020; +} + +/* custom style for paragraphs and links */ +.secondaryUI p.subTitle { + margin: .75em 0 .5em; + font-weight: bold; +} + +.secondaryUI a:link { + color: #DDDDDD; +} + +.secondaryUI a:visited { + color: #AAAAAA; +} + +.secondaryUI a:hover { + color: #FFFFFF; +} + +/* dialog area - for loading error and welcome messages */ #dialogArea { + position: absolute; top: 20%; right: 0; left: 0; - width: 30ch; + width: 50ch; max-width: 92%; z-index: 10; background-color: rgba(255, 255, 255, .8); @@ -150,7 +427,8 @@ h1 { } #dialogArea.hidden { - top: -100%; + top: -1000%; + display: block; } .dialogTitle { @@ -158,31 +436,86 @@ h1 { font-weight: bold; } -.dialogHelp { - margin: .5em 0; - font-size: small; - opacity: .66; +.dialogButtonLine { + text-align: center; } -@media screen and (max-width: 500px) { +/* full screen overlay - library, etc. */ +.fullScreenOverlay { + position: absolute; + top: 1%; + bottom: 1%; + right: 1%; + left: 1%; + z-index: 10; + background-color: rgba(15, 15, 15, 1.0); + border: 0; + margin: auto; + padding: .5em; + border-radius: 5px; +} + +.fullScreenOverlay.hidden { + top: -1000%; + bottom: auto; + height: 90%; + display: block; +} + +.fullScreenOverlay > .closeButtonContainer { + position: absolute; + top: 0; + right: 0; + margin: 0; + padding: 0.5em; + text-align: right; +} +/* +.fullScreenOverlay > .closeButtonContainer > .closeButton { + font-size: 2em; +} +*/ + +.fullScreenOverlay p { + margin: 0.5em 0; +} + +.fullScreenOverlay > p:first-child { + margin-top: 0; + /* leave space for close button */ + margin-right: 1.5em; +} + +#libTrackList { + overflow: auto; + /* 2em is top/bottom margin, and one line is shown above and below, with .5em margin each */ + height: calc(100% - 5em); +} + +#libTrackPages { + margin-bottom: 0; +} + +/* small screen media adaptations */ +@media screen and (max-width: 500px), + screen and (max-height: 500px) { body { font-size: 10px; } #menuArea { - top: 1px; - left: 1px; + top: 2px; + left: 2px; } #zoomArea { - top: 1px; - right: 1px; + top: 2px; + right: 2px; } #fullscreenArea { - right: 1px; - bottom: 10px; + right: 2px; + bottom: 20px; } #copyright { bottom: 1px; right: 1px; - font-size: 8px; } }