X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/19b4c1422594ab721e641fe89119758c834e549b..5da715756d385851fb4614f8345ca9699a7ed34f:/app/assets/stylesheets/common.css.scss diff --git a/app/assets/stylesheets/common.css.scss b/app/assets/stylesheets/common.css.scss index 3b78905f2..a73c8e86d 100644 --- a/app/assets/stylesheets/common.css.scss +++ b/app/assets/stylesheets/common.css.scss @@ -4,15 +4,16 @@ $typeheight: 14px; $offwhite: #f4f4ff; $blue: #7092FF; +$lightblue: #B8C5F0; $grey: #AAA; -$keyline: #CCC; +$lightgrey: #CCC; $hovercolor: 20%; /* Styles common to large and small screens */ /* Minimal CSS reset */ -html, body, ul, ol, li, form, fieldset, legend, h1, h2, h3, h4, h5, h6, p { +html, body, ul, ol, li, form, fieldset, legend, h1, h2, h3, h4, h5, h6, p, input { margin: 0; padding: 0; border: 0; @@ -140,6 +141,37 @@ h6:first-child { margin-right: $lineheight/4; } +/* Rules for icons */ + +.icon { + display:inline-block; + vertical-align:top; + width:20px; + height:20px; + background:transparent image-url("sprite.png") no-repeat 0 0; + text-indent:-9999px; + overflow:hidden; + } + +.icon-pre-text { + margin-right: 5px; +} + +.icon.search { background-position: 0 0; } +.icon.donate { background-position: -20px 0; } +.icon.zoomin { background-position: -40px 0; } +.icon.zoomout { background-position: -60px 0; } +.icon.geolocate { background-position: -80px 0; } +.active .icon.geolocate { background-position: -80px -20px; } +.icon.layers { background-position: -100px 0; } +.icon.key { background-position: -120px 0; } +.icon.share { background-position: -140px 0; } +.icon.clipboard { background-position: -160px 0; } +.icon.link { background-position: -180px 0; } +.icon.close { background-position: -200px 0; } +.icon.check { background-position: -220px 0; } +.icon.note { background-position: -240px 0; } + /* Rules for links */ a { @@ -218,6 +250,10 @@ table { #small-title { display: none; + + img { + vertical-align: text-bottom; + } } /* Rules for the introductory text displayed in the left sidebar to new users */ @@ -274,7 +310,7 @@ table { .left_menu { left: 0px; margin: 0; - padding: $lineheight/4 $lineheight/2; + padding: $lineheight/4 $lineheight/2 $lineheight/2 $lineheight/2; font-size: 12px; line-height: 1.25; list-style-type: none; @@ -300,23 +336,6 @@ table { font-size: 12px; margin: 0; } - - li:last-child h4 { - padding-top: 0; - } -} - -/* Rules for SOTM advert */ - -#sotm { - width: 165px; - margin: $lineheight/2; - padding: 0px; - border: 0px; - background: #fff; - img { - width: 165px; - } } /* @@ -365,7 +384,7 @@ table { min-width: 0; text-indent: -1000px; overflow: hidden; - background: image-url("sprite.png") 0 0 no-repeat; + background: image-url("sprite.png") -2px -2px no-repeat; position: absolute; top: $lineheight/4; right: $lineheight/4; @@ -388,9 +407,9 @@ table { /* Rules for donation request box */ -.donate { +a.donate { display: block; - width: 164px; + width: 163px; padding: $lineheight/4; border: 1px solid #AED1A0; background: #cbeea7; @@ -405,11 +424,6 @@ table { background: #9ed485; text-decoration: none; } - span { - margin: 0; - padding-left: 18px; - background: image-url("sprite.png") 0 -29px no-repeat; - } } /* Rules for Creative Commons logo button */ @@ -434,12 +448,13 @@ table { .site-index #top-bar, .site-export #top-bar { position: fixed; + top: 0; left: 0; right: 0; } #tabnav { - height: 30px; + height: 29px; margin-bottom:0; overflow: hidden; li { @@ -462,8 +477,7 @@ table { .site-index #tabnav a#viewanchor, .site-edit #tabnav a#editanchor, -.changeset-list #tabnav a#historyanchor, -.site-export #tabnav a#exportanchor { +.changeset-list #tabnav a#historyanchor { border-bottom: 1px solid #aaa; background: #9ed485; color: #000; @@ -488,7 +502,7 @@ table { .count-number { padding: 2px $lineheight/4; - border-radius: 3px; + border-radius: 2px; background: #d7d7ff; margin: 0 2px; font-size: 11px; @@ -516,38 +530,271 @@ table { left: 15px; } +/* Rules for bootstrap tooltips */ + +.tooltip { + position: absolute; + display: none; + color: #333; + text-align: left; + font-size: 12px; + max-width: 250px; +} + +.tooltip.in { + opacity: 0.8; + z-index: 1030; + height: auto; + display: block; +} + +.tooltip.top { + margin-top: -10px; + text-align: center; +} + +.tooltip.right { + margin-left: 10px; +} + +.tooltip.bottom { + margin-top: 10px; + text-align: center; +} + +.tooltip.left { + margin-left: -10px; + text-align: right; +} + +.tooltip-inner { + display: inline-block; + padding: 10px; + font-weight: normal; + background-color: white; +} + +.tooltip-arrow { + position: absolute; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} + +.tooltip.top .tooltip-arrow { + bottom: -5px; + left: 50%; + margin-left: -5px; + border-top-color: white; + border-width: 5px 5px 0; +} + +.tooltip.right .tooltip-arrow { + top: 50%; + left: -5px; + margin-top: -5px; + border-right-color: white; + border-width: 5px 5px 5px 0; +} + +.tooltip.left .tooltip-arrow { + top: 50%; + right: -5px; + margin-top: -5px; + border-left-color: white; + border-width: 5px 0 5px 5px; +} + +.tooltip.bottom .tooltip-arrow { + top: -5px; + left: 50%; + margin-left: -5px; + border-bottom-color: white; + border-width: 0 5px 5px; +} + /* Rules for Leaflet maps */ -.leaflet-control-attribution { - a.disabled { - color: #99c9dc; +.leaflet-control .control-button { + display: block; + height: 40px; + width: 40px; + background-color: #333; + background-color: rgba(0,0,0,.6); + -bottom: 1px solid #333; + border-radius: 4px 0 0 4px; + margin-bottom: 10px; + outline: none; + + &:hover { + background-color: black; + } + + &.active { + background-color: #9ed485; + } + + &.disabled { + background-color: #333; + background-color: rgba(0,0,0,.5); cursor: default; - text-decoration: none; } - ul.secondary-actions { - float: left; - margin-right: $lineheight/4; + .icon { + margin: 10px; + } +} - &:only-child { - margin-right: 0px; +.leaflet-control .zoomin, +.control-layers .control-button { + margin-bottom: 0px; + border-radius: 4px 0 0 0; +} + +.site .leaflet-control .zoomout, +.control-key .control-button { + margin-bottom: 0; + border-radius: 0; +} + +.leaflet-control .zoomout, // For non-main page maps +.control-locate .control-button, +.control-share .control-button { + border-radius: 0 0 0 4px; +} + +/* Rules for the home page */ + +.site-export #map, +.site-index #map, +.site-edit #map { + height: 100%; + overflow: hidden; +} + +#map-ui { + display: none; + position: relative; + float: right; + width: 250px; + height: 100%; + background: white; + border-left: 1px solid #CCC; + overflow: auto; + + .section { + border-bottom: 1px solid #DDD; + padding: 15px; + } + + a.close-button { + float: right; + padding:5px; + font-size:20px; + line-height:10px; + color:#222; + border:1px solid #ddd; + } +} + +.layers-ui, +.share-ui { + ul, li:last-child, p:last-child { + margin-bottom: 0; + } +} + +.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; + } + } +} + +.share-ui { + .share-tabs { + margin-bottom: 10px; + + a { + color: #fff; + text-decoration: none; + background-color: $lightblue; + padding: 5px 10px; + } + + a:first-child { + border-right: 1px solid #fff; + border-radius: 4px 0 0 4px; + } + + a:last-child { + border-left: 1px solid #fff; + border-radius: 0 4px 4px 0; + } + + a.active { + background-color: $blue; + } + } + + .share-tab { + display: none; + } + + .share-link { + input[type=text], + textarea { + width: 100%; + font-family: monospace; + font-size: small; + line-height: 1.3; + } + } + + .share-image { + label { + margin-right: 10px; } } + + #embed_html { + resize: vertical; + } + + #mapnik_scale { + width: 100px; + } } -.site-index .leaflet-top, -.site-export .leaflet-top { +.leaflet-top.leaflet-right { top: $lineheight/2 !important; .leaflet-control { + margin-right: 0px !important; margin-top: 0px !important; } } -.site-index #map .olControlScaleLine, -.site-export #map .olControlScaleLine { - left: $lineheight/2 !important; -} - .leaflet-popup-scrolled { padding-right: $lineheight; border-bottom: 0px !important; @@ -575,7 +822,7 @@ table { z-index: 10000; position: absolute; background-color: #ffffff; - border: 1px solid $keyline; + border: 1px solid $lightgrey; border-top: 0px; ul { margin: 0px; @@ -606,23 +853,11 @@ table { #sidebar { display: none; - position: absolute; - overflow: auto; - top: 0px; - bottom: 0px; - left: 0px; - border-right: 1px solid $keyline; + position: relative; + float: left; + border-right: 1px solid $lightgrey; width: 33.3333%; - .sidebar_heading { - position: relative; - padding: $lineheight/2 $lineheight; - z-index: 9999; - background: $offwhite; - border-bottom: 1px solid #ccc; - } - h4 { - margin: 0; - } + height: 100%; ul { margin-bottom: 0; &:last-child { @@ -637,7 +872,18 @@ table { } } -#sidebar_close { +.sidebar_heading { + position: relative; + padding: $lineheight/2 $lineheight; + z-index: 9999; + background: $offwhite; + border-bottom: 1px solid #ccc; + h4 { + margin: 0; + } +} + +.sidebar_close { position: absolute; height: $lineheight; top: 0px; @@ -649,6 +895,8 @@ table { #sidebar_content { position: relative; margin-bottom: 20px; + overflow: auto; + height: 100%; width: 100%; h4 { padding: 0 $lineheight $lineheight/2 $lineheight; @@ -661,7 +909,6 @@ table { /* Rules for the map key which appears in the popout sidebar */ #mapkey { - padding: $lineheight $lineheight 0 $lineheight; .mapkey-table-key img { display: block; margin-left: auto; @@ -738,26 +985,16 @@ ul.results-list li { border-bottom: 1px solid #ccc; } .export_area_inputs { margin-bottom: $lineheight/2; + input[type="text"] { + width: 80px; + margin-bottom: 5px; + } } .export_bound { margin: $lineheight/4; } -.export_details input[type="text"]#export_html_text { - width: 100%; -} - -#sidebar #marker_inputs li:last-child { - margin-bottom: $lineheight/2; -} - -#export_osm, -#export_mapnik, -#export_osmarender { - display: none; -} - /* Rules for the main content area */ #content { @@ -781,10 +1018,6 @@ ul.results-list li { border-bottom: 1px solid #ccc; } text-align: left; } -.site-edit #content { - top: 30px; -} - #content.maximised { top: 0; left: 0; @@ -864,28 +1097,6 @@ ul.results-list li { border-bottom: 1px solid #ccc; } margin-bottom: $lineheight; } -/* Rules for the home page */ - -.site-export #map, -.site-index #map { - position: absolute; - top: 0px; - bottom: 0px; - left: 0px; - right: 0px; -} - -/* Rules for the edit page */ - -.site-edit #map { - position: absolute; - top: 0px; - bottom: 0px; - left: 0px; - right: 0px; - overflow: hidden; -} - /* Rules for the changeset list shown by the history tab etc */ #changeset_list { @@ -952,7 +1163,7 @@ ul.results-list li { border-bottom: 1px solid #ccc; } h4, p { margin-bottom: $lineheight/4; } - p, ul, .bbox, .geo { + ul, .bbox, .geo { display: inline-block; vertical-align: top; max-width: 65%; @@ -962,6 +1173,7 @@ ul.results-list li { border-bottom: 1px solid #ccc; } margin-bottom: 0; } h4 { + float: left; width: 33.3333%; display: inline-block; vertical-align: top; @@ -1029,6 +1241,7 @@ ul.results-list li { border-bottom: 1px solid #ccc; } /* Rules for the user profile page */ #userinformation { + min-height: 100px; .userinformation-inner { float: left; @@ -1067,13 +1280,13 @@ ul.results-list li { border-bottom: 1px solid #ccc; } } .activity-details p { - margin-left: 72px; + margin-left: 70px; margin-bottom: 0; } #friends-container .contact-activity ul { - margin-left: 72px; - } + margin-left: 70px; +} .user-view { p#no_home_location { @@ -1096,16 +1309,11 @@ ul.results-list li { border-bottom: 1px solid #ccc; } .user_popup { min-width: 200px; - p { - padding-top: 0; - padding-bottom: 5px; - margin-top: 0; - margin-bottom: 0; - margin-left: 60px; + padding: 0 0 5px 0; + margin-top: 0 0 0 60px; font-size: 12px; } - img.user_thumbnail { float: left; margin: 0 $lineheight/2 0 0; @@ -1153,7 +1361,7 @@ ul.results-list li { border-bottom: 1px solid #ccc; } } h1, h2 { font-size: 21px; - line-height: 1; + line-height: 1em; } small.deemphasize { float: left; @@ -1220,7 +1428,7 @@ ul.results-list li { border-bottom: 1px solid #ccc; } /* Rules for the login page */ #login_openid_buttons { - height: 56px; + margin-bottom: 0; } #login_openid_buttons li { @@ -1285,8 +1493,16 @@ ul.results-list li { border-bottom: 1px solid #ccc; } border: 1px solid #ccc; } -.accountImage-options p { - margin-bottom: 0px; +#accountForm .user_image { + margin-bottom: 0; +} + +#accountForm #user_image { + margin-left: 20px; +} + +#accountForm ul.accountImage-options { + margin-left: 120px; } .nohome .location { @@ -1306,12 +1522,18 @@ ul.results-list li { border-bottom: 1px solid #ccc; } float: none; } -/* Rules for message in/out box page */ +/* Rules for the oauth settings page */ -.message #content { - max-width: 740px; +.oauth_clients .buttons .oauth-edit { + border-radius: 2px 0 0 2px; } +.oauth_clients .buttons .oauth-delete { + border-radius: 0 2px 2px 0; +} + +/* Rules for messages pages */ + .messages { width: 100%; border: 1px solid #ddd; @@ -1339,8 +1561,16 @@ ul.results-list li { border-bottom: 1px solid #ccc; } tr th { padding: $lineheight/4; } + p:last-child, + h2:last-child, + h3:last-child, + ol:last-child, + ul:last-child { + margin-bottom:0; + } tr td { - border-right: 1px solid $keyline; + height: 30px; + border-right: 1px solid $lightgrey; } } @@ -1362,10 +1592,26 @@ ul.results-list li { border-bottom: 1px solid #ccc; } vertical-align: middle; } +.inbox-mark-unread, +.inbox-mark-read, +.inbox-delete { + width: 1%; +} + .inbox-row-unread .inbox-mark-unread { display: none; } +.message-read .message-buttons { + margin-top: $lineheight; + padding-top: $lineheight; + border-top: 1px solid $lightgrey; +} + +.message-read .buttons .mark-unread-button { + border-radius: 0; +} + /* Rules for "flash" notice boxes shown at the top of the content area */ .flash { @@ -1394,11 +1640,12 @@ ul.results-list li { border-bottom: 1px solid #ccc; } #errorExplanation { width: 400px; border: 2px solid #ff7070; - padding: $lineheight/2; + padding: 0 $lineheight/2; margin-bottom: $lineheight; background-color: #f0f0f0; + h2 { - margin: -10px; + margin: 0 -10px 10px -10px; padding: $lineheight/4 $lineheight/4 $lineheight/4 15px; font-weight: bold; font-size: 12px; @@ -1413,32 +1660,58 @@ ul.results-list li { border-bottom: 1px solid #ccc; } padding: $lineheight/4; } - ul li { - font-size: 12px; - list-style: disc; - } + ul { + padding-left: $lineheight; + li { + font-size: 12px; + list-style: disc; + } + } } /* Rules for forms */ .standard-form { fieldset { - margin-bottom: $lineheight/2; + margin-bottom: $lineheight; } - label { + label.standard-label { display: block; - width: 300px; margin-bottom: $lineheight/4; font-size: $typeheight; font-weight: bold; line-height: 1.5; } + label.standard-label.secondary { + display: inline-block; + font-weight: normal; + } + .form-help { + font-weight: normal; + } + .form-column { + float: left; + margin-right: 20px; + } + .form-divider { + margin-top: $lineheight; + padding-top: $lineheight; + border-top: 1px solid $lightgrey; + } .form-row { margin-bottom: $lineheight/2; } - input[name=remember_me] { + .form-list { + margin-bottom: 0; + } + .form-list li { + margin-bottom: 5px; + } + input[type="checkbox"], + input[type="radio"] { float: left; + margin-top: 5px; } } @@ -1446,6 +1719,11 @@ ul.results-list li { border-bottom: 1px solid #ccc; } display: block; } +input[type="checkbox"], +input[type="radio"] { + margin-right: 5px; +} + input[type="text"], input[type="email"], input[type="url"], @@ -1453,10 +1731,13 @@ input[type="password"], textarea { border: 1px solid #ccc; padding: 2px 5px; + margin: 0; + width: 200px; } textarea { padding: 5px; + width: 100%; } /* Rules for user images */ @@ -1535,6 +1816,8 @@ ul.secondary-actions { .inner12 { padding: $lineheight/2 $lineheight;} +.inner11 { padding: $lineheight/2;} + .inner02 { padding: 0 $lineheight;} /* Utility for general button styles */ @@ -1545,8 +1828,10 @@ input[type="reset"], a.button { cursor: pointer; border: 0; - display: block; - padding: $lineheight/4; + display: inline-block; + line-height: 20px; + padding: $lineheight/4 $lineheight/2; + min-height: 20px + $lineheight/2; min-width: 120px; margin: 0 0 $lineheight/2 0; color: white; @@ -1558,37 +1843,67 @@ a.button { background: darken($blue, $hovercolor); text-decoration: none; } + &.deemphasize { + background: $lightblue; + &:hover { + background: darken($lightblue, $hovercolor); + } + } + &:disabled { + background: $lightgrey; + &:hover { + background: $lightgrey; + } + } &:last-child { margin-bottom: 0; } } -a.button.submit { - background-color: #cbeea7; - &:hover { - background-color: #9ed485; - } -} - .buttons { min-width: 200px; - input[type="submit"], + input[type="button"], + input[type="reset"], .button { box-sizing: border-box; - display: inline-block; - margin-bottom:0; - width:50%; - min-width: 0; + float: left; + border-radius: 0; + margin:0; + min-width: 100px; + max-width: 180px; + border-right:1px solid white; + text-overflow: ellipsis; + white-space: nowrap; + overflow: hidden; } input:first-child, .button:first-child { border-radius:2px 0 0 2px; - border-right:1px solid white; } input:last-child, - .button:first-child { + .button:last-child { + border-radius:0 2px 2px 0; + border-right-width: 0; + } + input:only-child, + .button:only-child, + *[value="Hide"] + input:last-child, + *[value="Hide"] + .button:last-child { + border-radius:2px; + border-right-width: 0; + } + /* if a 3-button set has a hidden middle button */ + *[value="Hide"] + input:nth-child(3), + *[value="Hide"] + .button:nth-child(3) { border-radius:0 2px 2px 0; + border-right-width: 0; + } + /* if a 3-button set starts with a hidden button */ + *[value="Hide"] + input:nth-child(2):not(:last-child), + *[value="Hide"] + .button:nth-child(2):not(:last-child) { + border-radius:2px 0 0 2px; + border-right-width: 1px solid white; } } @@ -1613,7 +1928,8 @@ a.button.submit { /* Rules for rich text */ -.richtext { +.richtext, +.prose { h1, h2 { padding-bottom: $lineheight/2; border-bottom: 1px dashed #cccccc; @@ -1664,7 +1980,6 @@ a.button.submit { } ul, ol { - font-style: italic; padding-left: $lineheight; margin-bottom: $lineheight; margin-left: $lineheight; @@ -1691,7 +2006,10 @@ a.button.submit { /* Rules for rich text editors */ .richtext_container { + margin-bottom: $lineheight; + .richtext_content { + width: 50%; display: inline-block; vertical-align: top; @@ -1719,8 +2037,7 @@ a.button.submit { margin-left: 15px; background-color: #f8f8ff; padding: $lineheight/2; - width: 300px; - max-width: 450px; + width: 220px; ul { margin-bottom: 0; @@ -1739,12 +2056,12 @@ a.button.submit { } li h4 { - width: 35%; + width: 40%; margin: 0; } li span, li p { - width: 60%; + width: 50%; margin-left: $lineheight/2; margin-bottom: $lineheight/4; white-space: nowrap; @@ -1770,11 +2087,11 @@ a.button.submit { /* Rules for the notes interface */ -.note { +.leaflet-popup-content .note { padding-top: $lineheight/2; } -.note { +.leaflet-popup-content .note { h2 { margin-bottom: $lineheight/2; } @@ -1789,7 +2106,6 @@ a.button.submit { left: $lineheight/4; min-width: 15px; min-height: 15px; - background: image-url("sprite.png") 0 -45px no-repeat; } .permalink span { @@ -1832,6 +2148,30 @@ a.button.submit { /* * Rules for the iD editor */ + +.site-edit-id { + #left, + #large-title { + display: none; + } + + #small-title { + display: inline-block; + width: 185px; + height: 30px; + font-size: 14px; + margin: 0; + background-color: #eee; + border-bottom: 1px solid #ccc; + text-align: center; + padding-top: 7px; + } + + #content { + left: 0; + } +} + .id-embed { width: 100%; height: 100%; @@ -1846,16 +2186,8 @@ a.button.submit { border-bottom: 1px solid #ccc; } -.ads { - width: 370px; - position: absolute; - left: 0%; -} - .ad { - float: left; - height: 120px; - padding: $lineheight/2; - border: 0px; + height: 100px; + border: 0; background: #fff; }