X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/3d4a137959573a9bada01e2622613c87b5056f92..4bb0785ad5bdad8fc8fcbbe35c61f585f58f4cce:/app/assets/stylesheets/common.css.scss diff --git a/app/assets/stylesheets/common.css.scss b/app/assets/stylesheets/common.css.scss index 43d59cfb5..644c0a20c 100644 --- a/app/assets/stylesheets/common.css.scss +++ b/app/assets/stylesheets/common.css.scss @@ -7,12 +7,14 @@ $blue: #7092FF; $lightblue: #B8C5F0; $green: #7ebc6f; $grey: #CCC; +$red: red; $lightgrey: #EEE; $darkgrey: #AAA; $hovercolor: 20%; -$headerHeight: 75px; -$sidebarWidth: 350px; -$keyline: 1px solid $grey; +$headerHeight: 54px; +$sidebarWidth: 300px; +$keyline: 1px solid $lightgrey; +$border-radius: 3px; /* Styles common to large and small screens */ @@ -50,6 +52,8 @@ abbr, acronym { cursor: help; } +strong { font-weight: 500; } + /* Micro Clearfix | Details: http://nicolasgallagher.com/micro-clearfix-hack/ */ .clearfix:before, @@ -118,10 +122,12 @@ body.slim { } h1, h2, h3 { - font-weight: bold; + font-weight: 500; line-height: 1.2; } +h4, h5 { font-weight: 500; } + h1 { font-size: 18px; } @@ -149,6 +155,8 @@ small, aside { margin-right: $lineheight/4; } +.red { color: $red; } + /* Rules for icons */ .icon { @@ -173,6 +181,7 @@ small, aside { .icon.clipboard { background-position: -160px 0; } .icon.link { background-position: -180px 0; } .icon.close { background-position: -200px 0; } +.icon.close:hover { background-position: -200px -20px; } .icon.check { background-position: -220px 0; } .icon.note { background-position: -240px 0; } .icon.gear { background-position: -260px 0; } @@ -182,6 +191,8 @@ small, aside { a { color: #00f; text-decoration: none; + -webkit-appearance: none; + outline: 0; &:hover { text-decoration: underline; } @@ -207,7 +218,7 @@ table { line-height: $lineheight; } th { - font-weight: bold; + font-weight: 500; vertical-align: top; } td { @@ -226,11 +237,23 @@ table { /* Rules for the header */ +#menu-icon { + display: none !important; + float: right; + background: url("/assets/menu-icon.png") no-repeat; + background-size: 30px 30px; + display: block; + width: 30px; + height: 30px; + margin: 14px 10px 0 0; + opacity: 0.6; +} + header { height: $headerHeight; position: relative; - border-bottom: $keyline; z-index: 1001; + font-size: 13px; h1, nav, nav > ul, nav > ul > li, .dropdown { display: inline-block; @@ -238,7 +261,7 @@ header { > * { height: 100%; - padding: $lineheight; + padding: $lineheight/2 $lineheight; } h1, nav.primary { @@ -250,14 +273,15 @@ header { } img.logo { - width: 40px; - height: 40px; + width: 30px; + height: 30px; + margin-top: -4px; vertical-align: middle; } h1 { margin: 0; - border-right: $keyline; + padding: ($lineheight - 3) $lineheight ($lineheight + 3); a { color: #000; @@ -267,35 +291,44 @@ header { nav.primary { > ul { - $border: 1px solid darken($green, 20%); + $border: 1px solid $green; border: $border; - border-radius: 4px; + border-radius: $border-radius; > li { border-right: $border; - &:last-child { border-right: 0; } + float: left; + &:last-child { + border-right: 0; + > a { border-radius: 0 $border-radius $border-radius 0; } + } + &:first-child > a { border-radius: $border-radius 0 0 $border-radius; } + > a:hover { background: lighten($green, 30%); } + &.current > a:hover { background: $green; } + &.disabled > a:hover { background: lighten($green, 38%); } + &.dropdown { + > a.tab { border-right: 1px solid lighten($green, 30%); } + &.current > a.tab { border-right: 1px solid lighten($green, 10%); } + } } } a.tab, .dropdown-toggle { display: inline-block; - font-weight: bold; + font-weight: 500; color: $green; padding: 5px 15px; } .dropdown-toggle { - padding: 5px 10px; - } - - #edit_tab a.tab { - border-right: 1px solid lighten($green, 20%); + padding: 5px 6px; } .caret { border-top-color: $green; + margin-top: 10px; } .disabled a { @@ -324,13 +357,16 @@ nav.secondary { position: absolute; right: 0; - > ul a, - .dropdown-toggle { - display: inline-block; - font-weight: bold; - text-decoration: none; - color: $darkgrey; - padding: 5px 5px; + > ul { + vertical-align: middle; + a, .dropdown-toggle { + display: inline-block; + text-decoration: none; + color: $darkgrey; + padding: 5px; + + &:hover { color: darken($darkgrey, 10%); } + } } > ul li.current a { @@ -340,44 +376,68 @@ nav.secondary { .user-menu { $border: 1px solid $grey; + font-weight: 500; border: $border; - border-radius: 4px; + border-radius: $border-radius; margin-left: 10px; > li { border-right: $border; - &:last-child { border-right: 0; } + float: left; + &:last-child { + border-right: 0; + + > a { + border-radius: 0 $border-radius $border-radius 0; + } + } + &:first-child > a { border-radius: $border-radius 0 0 $border-radius; } + &:hover a { background: lighten($darkgrey, 30%); } } a { padding: 5px 15px; + + } + + &.logged-in > a { + padding: 0; + > .user-button { + padding: 5px 10px 5px 6px; + display: inline-block; + color: $darkgrey; + } + &:hover > .user-button { color: darken($darkgrey, 5%); } } } .caret { border-top-color: $grey; - margin-top: 10px; + margin-top: 9px; } img.user_thumbnail_tiny { border: 0; vertical-align: top; - margin-top: 2px; - border-radius: 2px 0 0 2px; + margin-top: 0px; + margin: 3px 0 0 3px; + border-radius: 2px; } #inboxanchor { display: inline-block; vertical-align: top; - height: 20px; - margin: 2px 7px 0 0; - background-color: $grey; - border-radius: 0 2px 2px 0; + height: 25px; + margin: 3px 0 3px 3px; + background-color: lighten($grey, 10%); + line-height: 20px; + border-radius: 2; } .dropdown-menu { left: auto; - right: 0; + right: -1px; + border-radius: 3px 0 3px 3px; .count-number { float: right; @@ -387,12 +447,31 @@ nav.secondary { } } +#compact-secondary-nav { + display: none; + ul li a { + width: 100%; + color: #333; + &:hover { color: #fff; } + } +} + +@media only screen and (max-width:960px) { + #compact-secondary-nav { + display: inline-block; + } + .compact-hide { + display: none; + } +} + + /* Utility for styling notification numbers */ .count-number { padding: 2px $lineheight/4; border-radius: 2px; - background: #d7d7ff; + background: lighten($green, 30%); margin: 0 2px; font-size: 11px; color: #333; @@ -559,24 +638,21 @@ nav.secondary { #sidebar { float: left; width: $sidebarWidth; - border-right: $keyline; - - .alert { - background: #e00; - } h2, h3, h4 { - padding: $lineheight; - border-bottom: $keyline; + padding: $lineheight $lineheight $lineheight/2; } - h4 { + h4, span.user, span.date { font-weight: normal; + color: #666; + font-size: 12px; } .icon.close { position: absolute; right: $lineheight; + cursor: pointer; } .footer { @@ -592,6 +668,28 @@ nav.secondary { color: #666; } } + + p.large-text { + font-size: 1.7em; + line-height: 1.4em; + font-weight: 300; + } + } + + #sidebar.minimized { + position: absolute; + z-index: 1000; + height: auto; + border-right: none; + + #sidebar_content { + display: none; + } + + #search_form { + background: none; + width: 78%; + } } #map { @@ -610,7 +708,7 @@ nav.secondary { .section { border-bottom: 1px solid #DDD; - padding: 15px; + padding: 10px 20px; } a.close-button { @@ -632,29 +730,55 @@ nav.secondary { } .layers-ui { - li { - border-radius: 4px; - overflow: hidden; - margin-bottom: 10px; - } - - label { - display: block; - padding: 5px 5px 5px 7px; - background-color: #eee; - cursor: pointer; - } - - li.active label { - background-color: #ccc; - } - .base-layers { .leaflet-container { width: 100%; height: 50px; cursor: pointer; } + + li { + overflow: hidden; + border-radius: 3px; + border: 2px solid #fff; + margin-bottom: 8px; + position: relative; + transition: border-color 0.08s ease-in; + + label { + position: absolute; + top: 0; + left: 0; + padding: 2px 6px; + border-bottom-right-radius: 3px; + cursor: pointer; + font-weight: 500; + font-size: 16px; + text-stroke: 2px #fff; + background: rgba(255,255,255,.9); + text-shadow: + -2px -2px 1px #fff, + 2px -2px 1px #fff, + -2px 2px 1px #fff, + 2px 2px 1px #fff; + input[type="radio"] { + display: none; + } + } + + &.active { border-color: darken($green, 10%); } + &:hover { + border-color: $grey; + &.active { border-color: darken($green, 20%); } + } + } + } + + .overlay-layers { + p { + font-size: 13px; + margin-bottom: 8px; + } } } @@ -747,39 +871,44 @@ nav.secondary { text-align: center; } +.donate-attr { color: darken($green, 10%) !important; } + /* Rules for the sidebar */ .sidebar_heading { position: relative; padding: $lineheight/2 $lineheight; - background: $offwhite; - border-bottom: 1px solid #ccc; -} - -.sidebar_close { - position: absolute; - height: $lineheight; - top: 0px; - bottom: 0; - right: $lineheight; - margin: auto; + // background: $offwhite; + // border-bottom: 1px solid #ccc; + > .close { + float: right; + margin-top: 2px; + cursor: pointer; + } } #sidebar_content { position: absolute; - top: 72px; + top: 50px; bottom: 0; width: 100%; overflow-y: auto; + + .loader, + .load_more { + text-align: center; + margin: $lineheight auto; + width: $lineheight; + display: block; + } } /* Rules for the search box */ #search_form { position: relative; - padding: $lineheight; + padding: $lineheight/2 $lineheight; background-color: $lightgrey; - border-bottom: $keyline; #query_wrapper { position: relative; @@ -822,19 +951,17 @@ nav.secondary { a.donate { display: block; - width: 163px; - padding: $lineheight/4; - border: 1px solid #AED1A0; - background: #cbeea7; + padding: $lineheight/4 $lineheight; + border: 1px solid $green; font-size: $typeheight; line-height: 1.4; text-align: center; border-radius: 2px; color: #222; - margin: $lineheight/2 auto; + margin: $lineheight/2 $lineheight; &:hover { - background: #9ed485; + background: $green; text-decoration: none; } } @@ -877,21 +1004,10 @@ a.donate { /* Rules for search results which appear in the popout sidebar */ -.search_searching { - margin-top: $lineheight/4; - margin-bottom: $lineheight/4; -} - .search_results_entry { - .search_searching { - text-align: center; - margin: $lineheight auto; - width: $lineheight; - display: block; - } - ul li { - border-bottom: 1px solid #ccc; + border-bottom: $keyline; + &:first-child { border-top: $keyline; } } .search_details { @@ -928,8 +1044,12 @@ a.donate { } } -.browse_details { - position: relative; +/* Rules for entity history */ +#sidebar_content { + .browse_details { + position: relative; + border-bottom: $keyline; + } } .browse_status { @@ -942,6 +1062,15 @@ a.donate { li { padding: $lineheight; border-bottom: $keyline; + cursor: pointer; + + &.selected { background: #FFFFE6; } + /* color is derived from changeset bbox fillColor in history.js */ + } + + .comment a { + font-weight: 500; + color: #000; } } @@ -949,8 +1078,28 @@ a.donate { #sidebar_content { .browse-section { - padding: 20px; - border-bottom: 1px solid #CCC; + padding: 10px 20px; + + h4 { + padding: 0; + border-radius: 3px; + + &.paginate { + margin-top: 4px; + padding: 1px 6px; + border: 1px solid #eee; + span { + padding: 0 0 0 14px; + float: right; + border-left: 1px solid #eee; + > a { padding-left: 5px; } + } + } + } + } + + .paginate ul, .note-comments ul { + padding-left: 20px; } .browse-field { @@ -975,12 +1124,14 @@ a.donate { } .browse-tag-list { - border: 1px solid #CCC; - border-radius: 4px; + border-top: 1px solid #ddd; + border-bottom: 1px solid #ddd; font-size: 12px; + margin-left: -$lineheight; + margin-right: -$lineheight; li { - border-bottom: 1px solid #CCC; + border-bottom: 1px solid #ddd; } li:last-child { @@ -993,17 +1144,16 @@ a.donate { width: 50%; height: 30px; float: left; - padding: 9px 10px; + padding: 6px 10px 6px $lineheight; } .browse-tag-k { - font-weight: bold; + font-weight: 500; background-color: #F6F6F6; - border-radius: 4px 0 0 4px; } .browse-tag-v { - border-left: 1px solid #CCC; + border-left: 1px solid #ddd; } } } @@ -1026,11 +1176,46 @@ a.donate { margin: $lineheight/4; } +#export_osm { + span.small-title { + font-weight: 500; + display: block; + font-size: 14px; + padding-bottom: 5px; + } + + dl { + padding-left: 30px; + font-size: 13px; + color: #666; + dd { + margin-left: 0; + margin-bottom: 10px; + } + } +} + +/* Rules for edit pages */ + +.site-edit { + #content { + position: absolute; + top: $headerHeight; + bottom: 0; + width: 100%; + } + + #map { + height: 100%; + } +} + /* Rules for non-map content pages */ .content-heading { background: $lightgrey; - border-bottom: $keyline; + + h1 { font-size: 22px; } } .content-body { @@ -1100,12 +1285,6 @@ a.donate { } } -@media only screen and (max-width:900px) { - .header-illustration.new-user-arm { - display: none; - } -} - #content.maximised { top: 0; left: 0; @@ -1541,17 +1720,19 @@ a.donate { /* Rules for "flash" notice boxes shown at the top of the content area */ -.flash { - padding: $lineheight; - &#error { - background-color: #ff7070; - } - &#warning { - background-color: #ffe0cc; - } - &#notice { - background-color: #CBEEA7; - } +.error { + padding: $lineheight; + background-color: #ff7070; +} + +.warning { + padding: $lineheight; + background-color: #ffe0cc; +} + +.notice { + padding: $lineheight; + background-color: #CBEEA7; } /* Rules for highlighting fields with rails validation errors */ @@ -1584,7 +1765,7 @@ a.donate { h2 { margin: 0 -10px 10px -10px; padding: $lineheight/4 $lineheight/4 $lineheight/4 15px; - font-weight: bold; + font-weight: 500; font-size: 12px; background-color: #c00; color: #fff; @@ -1617,7 +1798,7 @@ a.donate { display: block; margin-bottom: $lineheight/4; font-size: $typeheight; - font-weight: bold; + font-weight: 500; line-height: 1.5; } label.standard-label.secondary { @@ -1715,7 +1896,7 @@ abbr.geo { .rsssmall { position: relative; - top: 5px; + top: 3px; } /* General styles for action lists / subnavs / pager navs */ @@ -1733,8 +1914,8 @@ ul.secondary-actions { float: left; list-style: none; border-left: 1px solid #ccc; - padding-left: $lineheight/4; - margin-right: $lineheight/4; + padding-left: $lineheight/2; + margin-right: $lineheight/2; &:first-child { border-left: 0; padding-left: 0; @@ -1745,6 +1926,12 @@ ul.secondary-actions { } } +div.secondary-actions { + padding: 10px; + border-top: 1px solid #ccc; + text-align: center; +} + /* Utility for managing inner content areas */ .inner22 { padding: $lineheight;} @@ -2123,7 +2310,7 @@ a.button { .dropdown-menu { position: absolute; top: 100%; - left: 0; + left: -1px; z-index: 1000; display: none; float: left; @@ -2133,6 +2320,7 @@ a.button { list-style: none; background-color: #ffffff; border: 1px solid #ccc; + border-radius: 0 3px 3px; *border-right-width: 2px; *border-bottom-width: 2px; -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); @@ -2298,7 +2486,8 @@ a.button { } .site-about #content { - background-color: #000; + //background-color: #000; + background-color: #eee; background-position: 50% 50%; background-repeat: no-repeat; background-size: cover; @@ -2313,13 +2502,14 @@ a.button { .caption { max-width: 200px; - font: italic 14px/20px 'Times New Roman', serif; + font: 13px/20px Helvetica, Arial, sans-serif; position: fixed; text-align: right; right: 20px; bottom: 60px; text-shadow: #000 0px 1px 5px; - color: #fff; + color: #eee; + opacity: 0.8; display: none; } @@ -2366,15 +2556,17 @@ a.button { .attr { position: relative; - padding: 170px 20px 20px 20px; + padding: 170px 40px 20px; background: #333; background: rgba(0, 0, 0, .8); margin-bottom: 0; + margin-top: -20px; - strong { + h1 { display: block; color: white; - font-size: 25px; + font-weight: 300; + font-size: 34px; span { color: #76c551; } @@ -2401,16 +2593,16 @@ a.button { width: 240px; height: 150px; padding: 20px 20px 20px 40px; - font: bold 24px/25px Helvetica, Arial, sans-serif; + font: 500 20px/24px Helvetica, Arial, sans-serif; white-space: nowrap; color: #fff; - background: #76c551 + background: #76c551; } .byosm span { display: inline-block; - width: 25px; - margin-left: -25px; + width: 20px; + margin-left: -20px; } } @@ -2434,3 +2626,10 @@ a.button { } @import 'browse'; + +@media only screen and (max-width:960px) { + .header-illustration.new-user-arm { + display: none; + } +} +