diff --git a/layouts/partials/meta_cache.html b/layouts/partials/meta_cache.html index 8d13404..fd3b926 100644 --- a/layouts/partials/meta_cache.html +++ b/layouts/partials/meta_cache.html @@ -1,2 +1,3 @@ + diff --git a/sass/_zen.scss b/sass/_zen.scss index ac53db3..c8d2a67 100644 --- a/sass/_zen.scss +++ b/sass/_zen.scss @@ -276,7 +276,7 @@ figcaption { /* Search */ .search-form { - @include padding-top(.5); + @include padding(.5 0); } .search-text { @@ -323,114 +323,3 @@ figcaption { } } } - -/* Mobile menu */ - -.mobile-nav-wrapper { - @include typeface(headings); - position: absolute; - right: 0; - top: 0; - width: 100vw; - height: 100vh; - overflow: hidden; - z-index: 20; - pointer-events: none; - - .js-nav-open & { - position: fixed; - } -} - -.mobile-nav-cover { - position: absolute; - width: 100vw; - height: 100vh; - background-color: rgba(color('black'), .2); - opacity: 0; - - .js-nav-open & { - opacity: 1; - pointer-events: auto; - } -} - -.mobile-nav-toggle { - display: block; - position: absolute; - top: $zen-gutters / 2; - right: $zen-gutters / 2; - padding: 3px ($zen-gutters + $zen-gutters / 4 + 4px) 2px 4px; - z-index: 22; - text-decoration: none; - font-weight: bold; - line-height: 1; - border: 1px solid color(border); - border-radius: 3px; - pointer-events: auto; - - .js-nav-open & { - color: color(text-bg); - } - - &::after { - position: absolute; - content: ''; - margin-left: $zen-gutters / 4; - width: $zen-gutters; - height: 4px; - border-top: 12px double color(text); - border-bottom: 4px solid color(text); - } - - .js-nav-open &::after { - border-color: color(text-bg); - } -} - -.mobile-nav-sheet { - background-color: color(header-bg); - width: 90vw; - height: 100vh; - padding: 2rem; - transform: translateX(100vw); - z-index: 21; - - .js-nav-open & { - pointer-events: auto; - box-shadow: -10px 0 10px -10px color(nearblack); - transform: translateX(10vw); - } - - .js-navbar { - display: flex; - flex-direction: column; - padding: 0; - margin: 0; - - li { - list-style-type: none; - margin: .4rem 0; - - a { - color: color(white); - text-decoration: none; - } - } - } - - .js-region { - @include padding(.5 0); - } -} - -.mobile-nav-cover, -.mobile-nav-toggle, -.mobile-nav-toggle::after, -.mobile-nav-sheet { - transition: all 130ms ease-in; - - .js-nav-open & { - transition: all 330ms ease-out; - } -} diff --git a/sass/components/header/_header.scss b/sass/components/header/_header.scss index d8de690..2a6428d 100644 --- a/sass/components/header/_header.scss +++ b/sass/components/header/_header.scss @@ -46,14 +46,12 @@ // Wrapper for any blocks placed in the header region. &__region { - @include padding(.5 0); - @include respond-to(s) { margin-left: auto; - padding: 0; @include rtl() { margin-right: auto; + margin-left: 0; } } } diff --git a/sass/navigation/mobile/_mobile.scss b/sass/navigation/mobile/_mobile.scss new file mode 100644 index 0000000..2cf6af0 --- /dev/null +++ b/sass/navigation/mobile/_mobile.scss @@ -0,0 +1,104 @@ +.mobile-nav-wrapper { + @include typeface(headings); + position: absolute; + right: 0; + top: 0; + width: 100vw; + height: 100vh; + overflow: hidden; + z-index: 20; + pointer-events: none; + + .js-nav-open & { + position: fixed; + } +} + +.mobile-nav-cover { + position: absolute; + width: 100vw; + height: 100vh; + background-color: rgba(color('black'), .2); + opacity: 0; + + .js-nav-open & { + opacity: 1; + pointer-events: auto; + } +} + +.mobile-nav-toggle { + display: block; + position: absolute; + top: $zen-gutters / 2; + right: $zen-gutters / 2; + padding: 3px ($zen-gutters + $zen-gutters / 4 + 4px) 2px 4px; + z-index: 22; + text-decoration: none; + font-weight: bold; + line-height: 1; + border: 1px solid color(border); + border-radius: 3px; + pointer-events: auto; + + .js-nav-open & { + color: color(text-bg); + } + + &::after { + position: absolute; + content: ''; + margin-left: $zen-gutters / 4; + width: $zen-gutters; + height: 4px; + border-top: 12px double color(text); + border-bottom: 4px solid color(text); + } + + .js-nav-open &::after { + border-color: color(text-bg); + } +} + +.mobile-nav-sheet { + background-color: color(header-bg); + width: 90vw; + height: 100vh; + padding: 2rem; + transform: translateX(100vw); + z-index: 21; + + .js-nav-open & { + pointer-events: auto; + box-shadow: -10px 0 10px -10px color(nearblack); + transform: translateX(10vw); + } + + .js-navbar { + display: flex; + flex-direction: column; + padding: 0; + margin: 0; + + li { + list-style-type: none; + margin: .4rem 0; + + a { + color: color(white); + text-decoration: none; + } + } + } +} + +.mobile-nav-cover, +.mobile-nav-toggle, +.mobile-nav-toggle::after, +.mobile-nav-sheet { + transition: all 130ms ease-in; + + .js-nav-open & { + transition: all 330ms ease-out; + } +} diff --git a/sass/styles.scss b/sass/styles.scss index 590d027..ae0ca37 100644 --- a/sass/styles.scss +++ b/sass/styles.scss @@ -63,6 +63,7 @@ @import 'navigation/breadcrumb/breadcrumb'; @import 'navigation/more-link/more-link'; @import 'navigation/navbar/navbar'; +@import 'navigation/mobile/mobile'; @import 'navigation/pager/pager'; @import 'navigation/skip-link/skip-link'; diff --git a/static/js/script.js b/static/js/script.js index fa475ea..d82655e 100644 --- a/static/js/script.js +++ b/static/js/script.js @@ -31,8 +31,8 @@ } // Display CSS grid layout warning to old browsers. - if (!window.CSS || !window.CSS.supports || !window.CSS.supports('display', 'grid')) { - $('.header').after(''); - } + // if (!window.CSS || !window.CSS.supports || !window.CSS.supports('display', 'grid')) { + // $('.header').after(''); + // } })(jQuery);