X-Git-Url: https://jfr.im/git/irc/freenode/web-7.0.git/blobdiff_plain/9394d534e411a4c874e8693ddb307b8f3df2fa3b..78f36cc1b822c2127494585cb362fe02a0103b5f:/static/css/style.css?ds=sidebyside diff --git a/static/css/style.css b/static/css/style.css index a7108ecd3..3893d8543 100644 --- a/static/css/style.css +++ b/static/css/style.css @@ -1,19 +1,44 @@ /* vars */ :root { - --navbar-bg: #292f2f; - --jumbotron-bg: #3a4346; - --copyright-bg: #292f2f; - --link-color: 66,139,202; - --footer-link-color: #ddd; - --nlink-col: #000; - --text-color: #333; - --footer-text-color: #eee; - --copyright-text-color: #ccc; - --jumbotron-text-color: #eee; - --border-color: #292f2f; - --box-hover-color: #ddd; - --box-round: 10px; -} + --c-dark: #292f2f; + --c-bg-dark: #3a4346; + --c-bg-light: #4c5456; + --c-light: #ecf7fa; + --c-hl-dark: #008499; + --c-hl-light: #3baec4; + + /* backgrounds */ + --navbar-bg: var(--c-dark); + --jumbotron-bg: var(--c-bg-dark); + --copyright-bg: var(--c-dark); + + /* link colors */ + --link-color: var(--c-hl-dark); + --link-hover-color: var(--c-hl-light); + --footer-link-color: var(--c-light); + --footer-hover-color: #fff; + + /* text colors */ + --text-color: var(--c-dark); + --footer-text-color: var(--c-light); + --copyright-text-color: var(--c-light); + --jumbotron-text-color: var(--c-light); + --art-date-color: color(var(--c-dark) tint(50%)); + + /* box colors */ + --border-color: var(--c-dark); + --box-color: var(--c-bg-light); + --box-hover-color: var(--c-dark);; + --box-round: 10px; + + /* other */ + --max-width: 1200px; + --max-width-box: 800px; + --margin-box-fa: 5px; +} +@custom-media --max-sm all and (max-width: 600px); +@custom-media --max-md all and (max-width: 800px); +@custom-media --max-rem all and (max-width: 60rem); /* reset css for browser compat */ * { @@ -25,6 +50,8 @@ /* global */ body { font-family: 'Open Sans'; + font-feature-settings: "lnum"; + font-variant-numeric: lining-nums; color: var(--text-color); font-size: 14px; min-height: 100vh; @@ -32,10 +59,17 @@ body { } a { - color: rgb(var(--link-color)); + color: var(--link-color); text-decoration: none; } +a:hover { + color: var(--link-hover-color); +} +img { + max-width: 100%; +} + /* navbar */ .navbar { width: 100%; @@ -52,77 +86,121 @@ a { align-items: center; border-bottom: 1px solid var(--border-color); z-index: 100; + padding-right: 5px; } -@media all and (max-width: 600px) { +@media (--max-sm); { .navbar { position: absolute; } } .navbar a { + margin-top: 2px; height: 40px; } -a.nav-light { - background-color: #eee; - height: 44px; - padding: 2px; - margin-right: 3px; -} - .nlogo { height: 40px; } -.navlinks { - display: flex; - justify-content: space-around; - flex-wrap: nowrap; -} - -.nlink { - text-decoration: none; - color: var(--nlink-col); +.tlogo { + height: 40px; + margin-bottom: -9px; + margin-left: -10px; + margin-right: -10px; } /* main */ .container { - padding: 50px 0 0; width: 100%; - min-height: 98vh; - padding-bottom: 11.5rem; + min-height: 100vh; + padding-top: 50px; + padding-bottom: 12.5rem; } .main { - margin: 0 .5em; - margin-top: 1em; + margin: 2em auto; + padding: 0 .75em; + max-width: var(--max-width); + line-height: 1.8; } .main h1, .main h2, .main h3, -.main p + p { - margin-top: .5em; +.main h4, +.main li, +.main pre, +.main p { + margin-top: .7em; +} + +.main h1 + p, +.main h2 + p, +.main h3 + p, +.main h3 + p { + margin-top: 0; +} + +ul { + padding-left: 2em; + list-style-type: disc; +} + +ol { + padding-left: 2em; + list-style-type: decimal; +} + +hr { + margin-top: .8em; + margin-bottom: .8em; } /* jumbotron */ .jumbotron { position: relative; width: 100%; - margin-top: -16px; - background: #000; + margin-top: -50px; background: var(--jumbotron-bg); box-shadow: 0 1px 5px rgba(0, 0, 0, 0.6); color: var(--jumbotron-text-color); - padding: 2em 0; + padding: 4em 0 4em 0; +} + +.jindex { + z-index: 99; +} + +.jlogo { + display: block; + margin: 25px auto; +} + +.jpia { + position: absolute; + height: 40px; + right: 0; + top: 0; + margin: 25px; +} + +@media (--max-sm) { + .jlogo { + margin: 2em auto -2em auto; + } + .jumbotron { + padding-bottom: 2em; + } } .child { text-align: center; - margin: .5em; + margin: .5em auto; font-size: 32px; line-height: 48px; + max-width: 75%; } .box-container { @@ -130,211 +208,247 @@ a.nav-light { flex-wrap: wrap; justify-content: space-around; align-items: stretch; - max-width: 800px; + max-width: var(--max-width-box); margin: 0 auto; } .box { text-align: center; text-decoration: none; - color: var(--text-color); + color: var(--jumbotron-text-color); margin-bottom: 5px; - padding: 5px; flex-basis: 30%; - background-color: #fff; + min-width: 26%; + background-color: var(--box-color); border-radius: var(--box-round); - -webkit-border-radius: var(--box-round); - -moz-border-radius: var(--box-round); -} - -.box span { - display: block; + padding: 1em; } .box:hover,.box:active { + color: var(--jumbotron-text-color); background-color: var(--box-hover-color); } -.box div{ - font-size: 28px; - line-height: 28px; - padding-left: 8px; - font-weight: 700; +.box span { position: relative; - display: inline; - top: -10px; + top: initial; + font-size: 20px; + font-weight: 600; + line-height: 16px; + display: block; + margin-top: .75em; } .fa-users { - margin-top: 5px; -} - -.fa-comment,.fa-question { - margin-bottom: 5px; + margin-top: var(--margin-box-fa); } -.fa-4x { - padding-left: 8px; +.fa-comments,.fa-question { + margin-bottom: var(--margin-box-fa); } .title { text-align: center; } -/* articles feed */ -h1 { - margin: 0; +@media (--max-md) { + .box { + text-align: center; + } + + .child { + font-size: 20px; + line-height: 30px; + padding: 10px 0 5px; + } + + .fa-4x { + padding: 0; + margin: 0; + width: 60px; + text-align: center; + font-size: 28px; + } + + .box-container { + flex-direction: column; + margin: 0 .5em; + } + + .box span { + font-size: 22px; + line-height: 22px; + padding-left: 8px; + font-weight: bold; + position: relative; + display: inline-block; + text-align: center; + margin-top: 0; + } + + .box { + text-align: left; + border-radius: calc(var(--box-round) / 2); + margin: 5px 0; + } } -div.art { - clear: right; - min-height: 2em; - flex-grow: 1; +/* articles */ +h1 { + margin: 0; } -div.artlist { +.art-info { + margin-top: 2.1em; display: flex; + flex-direction: row; flex-wrap: wrap; - justify-content: flex-start; - align-items: stretch; - margin-top: .5em; + justify-content: space-between; + align-items: baseline; } -@media all and (min-width: 800px) { - div.artlist { - max-width: 50%; - margin-right: auto; - margin-left: auto; - } +.art-info h1 { + margin-top: 0; + display: inline; + margin-right: 2em; } -div.art:not(:first-child) { - border-top: 1px solid var(--border-color); +.art-body { + margin-bottom: 1em; } -b.art { - margin-bottom: 0; - font-size: 18px; +.artlist { + max-width: var(--max-width); + margin: 0 auto; + margin-top: .5em; } -p.art { - margin: 0; +.artlist.heading { + margin: 8em auto 2em auto; + padding: 0 0.75em; } -p.art-ingress { - font-style: italic; - margin: 0; +.artlist .art-info:not(:first-child) { + border-top: 1px solid var(--border-color); } .art-date { - float: right; - color: #ccc; - margin: 0 .5em; -} - -p.heading { + display: inline-block; + vertical-align: baseline; + line-height: 1; white-space: nowrap; + color: var(--art-date-color); + font-feature-settings: "tnum"; + font-variant-numeric: tabular-nums; } -p.art-link { - margin-top: 0; +.art-nav { + display: flex; + flex-direction: row; + justify-content: space-between; + width: 100%; } -/* Article */ -.art-full h1, -.art-full h2, -.art-full h3, -.art-full h4 {} +@media (--max-md) { + .main.artlist { + padding-left: 0; + padding-right: 0; + } + + .artlist .art-info { + padding: 0 .75em; + } +} -/* help */ -.hmain { +/* faq */ +.kb-index { + list-style-type: none; + padding-left: 0; display: flex; + flex-direction: row; flex-wrap: wrap; - justify-content: space-around; - align-items: stretch; + justify-content: stretch; } -a.hchild { - color: var(--text-color); -/*height: 40px;*/ - width: 95%; - text-align: center; - border-top: 1px solid var(--border-color); - border-left: 1px solid var(--border-color); - border-right: 1px solid var(--border-color); +.kb-index li { + display: block; + flex: 1 1 15em; + height: 7em; + margin: 1em; } -a.hchild:hover,a.hchild:active { - background-color: var(--box-hover-color); +.kb-index li h2 { + margin-top: 0; } -.hchild:first-child { - margin-top: 10px; - -webkit-border-top-left-radius: var(--box-round); - -webkit-border-top-right-radius: var(--box-round); - -moz-border-radius-topleft: var(--box-round); - -moz-border-radius-topright: var(--box-round); - border-top-left-radius: var(--box-round); - border-top-right-radius: var(--box-round); +.kb-index a { + display: block; + color: var(--text-color); + width: 100%; + height: 100%; } - -.hchild:last-child { - margin-bottom: 10px; - border-bottom: 1px solid var(--border-color); - -webkit-border-bottom-right-radius: var(--box-round); - -webkit-border-bottom-left-radius: var(--box-round); - -moz-border-radius-bottomright: var(--box-round); - -moz-border-radius-bottomleft: var(--box-round); - border-bottom-right-radius: var(--box-round); - border-bottom-left-radius: var(--box-round); +.kb-index a h2 { + color: var(--link-color); +} +.kb-index a:hover h2 { + color: var(--link-hover-color); } /* footer */ .footers { /*min-height: 30vh;*/ - margin-top: -11rem; - min-height: 11rem; + margin-top: -12rem; + min-height: 12rem; } .footer { background: var(--jumbotron-bg); color: var(--footer-text-color); - margin-top: 2vh; + width: 100%; + box-shadow: 0 -3px 5px rgba(150,150,150,.36); + min-height: 10.5rem; + padding: 3em 0; +} + +.footer-container { display: flex; flex-wrap: wrap; - justify-content: space-between; + justify-content: center; align-items: flex-start; - box-shadow: 0 -3px 5px rgba(150,150,150,.36); - min-height: 9.5rem; + margin: 0 auto; } .footerchild { + margin: 0 2em; margin-top: .5em; - flex: 1 1 1px; - min-width: 12rem; + flex-grow: 1; + flex-shrink: 0; } .footerchild:last-child { - margin-bottom: 1em; + margin-bottom: .5em; } -@media all and (max-width: 60rem) { - .footer-push { - margin-left: auto; - width: max-content; - } +.footer-push { + margin-left: auto; + width: max-content; } -.footer a { +footer a { color: var(--footer-link-color); } +footer a:hover { + color: var(--footer-hover-color); +} + .footer h2 { margin-bottom: .1em; display: inline-block; } -.footerchild ul,.footerchild ul ul { +.footerchild ul, .footerchild ul ul { + padding-left: 0; margin-left: 10px; margin-right: 10px; list-style-type: none; @@ -344,92 +458,90 @@ a.hchild:hover,a.hchild:active { padding-left: 30px; } -@media all and (max-width: 600px) { - .footer { +@media (--max-sm) { + .footer-container { flex-direction: column; } - .footerchild { - width: 100%; - } - .footer-push { margin-left: 0; + width: 100%; } .footerchild ul li:last-child { margin-bottom: .5em; } + .footer-push ul li:last-child { + margin-bottom: .1em; + } + .hdn { display: none; } - - .box { + .footer { + padding: .5em 0; + } + .footer-push ul { + display: flex; + flex-wrap: wrap; + flex-direction: row; + justify-content: space-between; + align-items: flex-start; text-align: center; } - - .child { - font-size: 20px; - line-height: 30px; - padding: 10px 0 5px; + .footer-push ul li { + display: inline-block; + font-size: 12vw; } - - .fa-4x { - padding: 0; - margin: 0; - } - - .box-container { - flex-direction: column; - margin: 0 .5em; - } - - .box div { - position: relative; - top: initial; - font-size: 16px; - font-weight: normal; - line-height: 16px; - padding: 10px 0; - display: block; + .footer-push ul li img { + height: 12vw; } } -.footer h2,.footer h3 { +.footer h2, .footer h3 { margin-left: 10px; margin-right: 10px; } -.copyright { +footer.copyright { display: flex; flex-wrap: wrap; justify-content: space-between; - align-items: center; background: var(--copyright-bg); min-height: 1.5rem; color: var(--copyright-text-color); + padding-left: .5em; + padding-right: .5em; + overflow: hidden; } -a.copyright { - background: var(--copyright-bg); - margin-bottom: 0; - margin-top: 0; - margin-left: .5em; - margin-right: .5em; - width: auto; - height: auto; +footer.copyright div { + display: flex; + align-items: center; + height: 1.5rem; + line-height: 1.5rem; + vertical-align: top; } -.copyright a img { +.copyright * { + margin: 0; height: 1.5rem; - width: auto; + line-height: 1.5rem; } -.copyright p { - margin-bottom: 0; - margin-top: 0; - margin-left: .5em; +.copyright .fa { + height: 100%; + vertical-align: top; + font-size: 1.4em; +} + +.copyright .footer-link { + height: 28px; margin-right: .5em; - text-align: right; +} + +.copyright img { + height: 1.5rem; + width: auto; }