X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/2b42fd102a55f7af41b8e19dfcb7271abb72ed1d..726db77827fa71133cc9762c3bf295189269ebb5:/app/assets/stylesheets/common.css.scss diff --git a/app/assets/stylesheets/common.css.scss b/app/assets/stylesheets/common.css.scss index 5f038d692..d8b843000 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 { @@ -215,51 +226,6 @@ table { } } -/* Rules for the search box */ - -#search_form { - position: relative; - padding: $lineheight; - background-color: $lightgrey; - border-bottom: $keyline; - - #query_wrapper { - position: relative; - overflow: hidden; - } - - input { - width: 100%; - height: 30px; - border-right: none; - border-radius: 2px 0 0 2px; - - transition: 300ms linear; - -webkit-transition: 300ms linear; - -moz-transition: 300ms linear; - } - - input:focus { - outline: none; - box-shadow: 0px 0px 7px #9ED485; - } - - input[type=submit] { - float: right; - width: auto; - min-width: 0; - border-radius: 0 2px 2px 0; - } - - #describe_location { - position: absolute; - top: 6px; - right: 6px; - font-size: 10px; - color: $blue; - } -} - /* Utility for de-emphasizing content */ .deemphasize { @@ -269,34 +235,25 @@ table { } } -/* Rules for donation request box */ +/* Rules for the header */ -a.donate { +#menu-icon { + display: none !important; + float: right; + background: url("/assets/menu-icon.png") no-repeat; + background-size: 30px 30px; display: block; - width: 163px; - padding: $lineheight/4; - border: 1px solid #AED1A0; - background: #cbeea7; - font-size: $typeheight; - line-height: 1.4; - text-align: center; - border-radius: 2px; - color: #222; - margin: $lineheight/2 auto; - - &:hover { - background: #9ed485; - text-decoration: none; - } + width: 30px; + height: 30px; + margin: 14px 10px 0 0; + opacity: 0.6; } -/* Rules for the header */ - 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; @@ -304,7 +261,7 @@ header { > * { height: 100%; - padding: $lineheight; + padding: $lineheight/2 $lineheight; } h1, nav.primary { @@ -316,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; @@ -333,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 { @@ -390,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 { @@ -406,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; @@ -453,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; @@ -605,34 +618,107 @@ nav.secondary { border-radius: 0 0 0 4px; } -/* Rules for the home page */ +/* Rules for the sidebar and main map area */ -#map { - height: 100%; - overflow: hidden; -} +.map-layout { + #content { + position: absolute; + top: $headerHeight; + bottom: 0; + width: 100%; + } -#map-ui { - display: none; - position: relative; - float: right; - width: 250px; - height: 100%; - background: white; - overflow: auto; + #sidebar, #map { + position: relative; + height: 100%; + overflow-x: hidden; + overflow-y: auto; + } + + #sidebar { + float: left; + width: $sidebarWidth; + + h2, h3, h4 { + padding: $lineheight $lineheight $lineheight/2; + } - .section { - border-bottom: 1px solid #DDD; - padding: 15px; + h4, span.user, span.date { + font-weight: normal; + color: #666; + font-size: 12px; + } + + .icon.close { + position: absolute; + right: $lineheight; + cursor: pointer; + } + + .footer { + position: absolute; + bottom: 0; + } + + p.credits { + font-size: 11px; + color: #999; + + a { + color: #666; + } + } + + p.large-text { + font-size: 1.7em; + line-height: 1.4em; + font-weight: 300; + } } - a.close-button { + #sidebar.minimized { + position: absolute; + z-index: 1000; + height: auto; + border-right: none; + + #sidebar_content { + display: none; + } + + #search_form { + background: none; + width: 78%; + } + } + + #map { + height: 100%; + overflow: hidden; + } + + #map-ui { + display: none; + position: relative; float: right; - padding:5px; - font-size:20px; - line-height:10px; - color:#222; - border:1px solid #ddd; + width: 250px; + height: 100%; + background: white; + overflow: auto; + + .section { + border-bottom: 1px solid #DDD; + padding: 10px 20px; + } + + a.close-button { + float: right; + padding:5px; + font-size:20px; + line-height:10px; + color:#222; + border:1px solid #ddd; + } } } @@ -644,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; + } } } @@ -759,66 +871,122 @@ nav.secondary { text-align: center; } +.donate-attr { color: darken($green, 10%) !important; } + /* Rules for the sidebar */ -#sidebar { - border-right: $keyline; +.sidebar_heading { + position: relative; + padding: $lineheight/2 $lineheight; + // background: $offwhite; + // border-bottom: 1px solid #ccc; + > .close { + float: right; + margin-top: 2px; + cursor: pointer; + } +} - .alert { - background: #e00; +#sidebar_content { + position: absolute; + top: 50px; + bottom: 0; + width: 100%; + overflow-y: auto; + + .loader, + .load_more { + text-align: center; + margin: $lineheight auto; + width: $lineheight; + display: block; } +} - h2, h3, h4 { - padding: $lineheight; - border-bottom: $keyline; +/* Rules for the search box */ + +#search_form { + position: relative; + padding: $lineheight/2 $lineheight; + background-color: $lightgrey; + + #query_wrapper { + position: relative; + overflow: hidden; } - h4 { - font-weight: normal; + input { + width: 100%; + height: 30px; + border-right: none; + border-radius: 2px 0 0 2px; + + transition: 300ms linear; + -webkit-transition: 300ms linear; + -moz-transition: 300ms linear; } - .icon.close { - position: absolute; - right: $lineheight; + input:focus { + outline: none; + box-shadow: 0px 0px 7px #9ED485; } - .footer { + input[type=submit] { + float: right; + width: auto; + min-width: 0; + border-radius: 0 2px 2px 0; + } + + #describe_location { position: absolute; - bottom: 0; + top: 6px; + right: 6px; + font-size: 10px; + color: $blue; } +} - p.credits { - font-size: 11px; - color: #999; +/* Rules for donation request box */ - a { - color: #666; - } +a.donate { + display: block; + 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 $lineheight; + + &:hover { + background: $green; + text-decoration: none; } } -.sidebar_heading { +/* Rules for rotating sidebar ads */ + +.ad-container { + display: block; + height: 120px; + margin: auto; + overflow: hidden; 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; -} + a { + display: block; + width: 165px; + margin: auto; + } -#sidebar_content { - position: absolute; - top: 72px; - bottom: 0; - width: 100%; - overflow-y: auto; + .ad { + height: 100px; + border: 0; + background: #fff; + } } /* Rules for the map key which appears in the popout sidebar */ @@ -836,21 +1004,10 @@ nav.secondary { /* 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 { @@ -887,14 +1044,107 @@ nav.secondary { } } -.browse_details { - position: relative; +/* Rules for entity history */ +#sidebar_content { + .browse_details { + position: relative; + border-bottom: $keyline; + } } .browse_status { display: none; } +/* Rules for the changeset list shown by the history tab */ + +#sidebar .changesets { + 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; + } +} + +/* Rules for the data browser */ + +#sidebar_content { + .browse-section { + padding: 10px 20px; + + h4 { + padding: 0; + } + } + + .paginate ul, .note-comments ul { + padding-left: 20px; + } + + .browse-field { + margin-bottom: 10px; + + h4 { + padding: 5px 0 5px 10px; + font-size: 12px; + border: 1px solid #CCC; + border-radius: 4px 4px 0 0; + background-color: #F6F6F6; + } + + p { + padding: 7px 10px; + font-size: 12px; + background-color: #FFF; + border: 1px solid #CCC; + border-top: 0; + border-radius: 0 0 4px 4px; + } + } + + .browse-tag-list { + border-top: 1px solid #ddd; + border-bottom: 1px solid #ddd; + font-size: 12px; + margin-left: -$lineheight; + margin-right: -$lineheight; + + li { + border-bottom: 1px solid #ddd; + } + + li:last-child { + border-bottom: 0; + } + + .browse-tag-k, + .browse-tag-v { + display: inline-block; + width: 50%; + height: 30px; + float: left; + padding: 6px 10px 6px $lineheight; + } + + .browse-tag-k { + font-weight: 500; + background-color: #F6F6F6; + } + + .browse-tag-v { + border-left: 1px solid #ddd; + } + } +} + /* Rules for export information which appears in the popout sidebar */ .export_bounds { @@ -913,13 +1163,28 @@ nav.secondary { margin: $lineheight/4; } -/* Rules for the sidebar and main content area */ +#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-index, -.site-export, -.site-edit, -.changeset-list, -.browse { +.site-edit { #content { position: absolute; top: $headerHeight; @@ -927,22 +1192,17 @@ nav.secondary { width: 100%; } - #sidebar, #map { - position: relative; + #map { height: 100%; - overflow-x: hidden; - overflow-y: auto; - } - - #sidebar { - float: left; - width: $sidebarWidth; } } +/* Rules for non-map content pages */ + .content-heading { background: $lightgrey; - border-bottom: $keyline; + + h1 { font-size: 22px; } } .content-body { @@ -1012,12 +1272,6 @@ nav.secondary { } } -@media only screen and (max-width:900px) { - .header-illustration.new-user-arm { - display: none; - } -} - #content.maximised { top: 0; left: 0; @@ -1074,78 +1328,6 @@ nav.secondary { float: right; } -/* Rules for the changeset list shown by the history tab */ - -#sidebar .changesets { - li { - padding: $lineheight; - border-bottom: $keyline; - } -} - -/* Rules for the data browser */ - -body.browse #sidebar_content { - .browse-section { - padding: 20px; - border-bottom: 1px solid #CCC; - } - - .browse-field { - margin-bottom: 10px; - - h4 { - padding: 5px 0 5px 10px; - font-size: 12px; - border: 1px solid #CCC; - border-radius: 4px 4px 0 0; - background-color: #F6F6F6; - } - - p { - padding: 7px 10px; - font-size: 12px; - background-color: #FFF; - border: 1px solid #CCC; - border-top: 0; - border-radius: 0 0 4px 4px; - } - } - - .browse-tag-list { - border: 1px solid #CCC; - border-radius: 4px; - font-size: 12px; - - li { - border-bottom: 1px solid #CCC; - } - - li:last-child { - border-bottom: 0; - } - - .browse-tag-k, - .browse-tag-v { - display: inline-block; - width: 50%; - height: 30px; - float: left; - padding: 9px 10px; - } - - .browse-tag-k { - font-weight: bold; - background-color: #F6F6F6; - border-radius: 4px 0 0 4px; - } - - .browse-tag-v { - border-left: 1px solid #CCC; - } - } -} - /* Rules for the trace list shown by the traces tab etc */ #trace_list { @@ -1525,17 +1707,19 @@ body.browse #sidebar_content { /* 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 */ @@ -1568,7 +1752,7 @@ body.browse #sidebar_content { 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; @@ -1601,7 +1785,7 @@ body.browse #sidebar_content { display: block; margin-bottom: $lineheight/4; font-size: $typeheight; - font-weight: bold; + font-weight: 500; line-height: 1.5; } label.standard-label.secondary { @@ -1699,7 +1883,7 @@ abbr.geo { .rsssmall { position: relative; - top: 5px; + top: 3px; } /* General styles for action lists / subnavs / pager navs */ @@ -1717,8 +1901,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; @@ -1729,6 +1913,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;} @@ -2066,37 +2256,13 @@ a.button { } } -/* - * Rules for the iD editor - */ +/* Rules for the iD editor */ .id-embed { width: 100%; height: 100%; } -/* Rules for rotating sidebar ads */ -.ad-container { - display: block; - height: 120px; - margin: auto; - overflow: hidden; - position: relative; - border-bottom: 1px solid #ccc; - - a { - display: block; - width: 165px; - margin: auto; - } - - .ad { - height: 100px; - border: 0; - background: #fff; - } -} - /* Rules for dropdown menus */ .dropdown { @@ -2131,7 +2297,7 @@ a.button { .dropdown-menu { position: absolute; top: 100%; - left: 0; + left: -1px; z-index: 1000; display: none; float: left; @@ -2141,6 +2307,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); @@ -2306,7 +2473,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; @@ -2321,13 +2489,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; } @@ -2374,15 +2543,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; } @@ -2409,16 +2580,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; } } @@ -2440,3 +2611,12 @@ a.button { &.infringement { background-position: 0px -160px; } } } + +@import 'browse'; + +@media only screen and (max-width:960px) { + .header-illustration.new-user-arm { + display: none; + } +} +