// Overlay // // .overlay-active { overflow: hidden; } // Vendor prefixes $sass-burger-add-vendor-prefixes: true !default; // Burger @mixin burger($width: 30px, $height: 5px, $gutter: 3px, $color: #000, $border-radius: 0, $transition-duration: .3s) { $burger-height: $height !global; $burger-gutter: $gutter !global; position: relative; margin-top: $height + $gutter; margin-bottom: $height + $gutter; @if $sass-burger-add-vendor-prefixes { @include prefix(user-select, none, webkit moz ms); } user-select: none; // 1. Fixes jagged edges in Firefox, see issue #10. &, &::before, &::after { display: block; width: $width; height: $height; background-color: $color; outline: 1px solid transparent; // 1 @if $border-radius != 0 { border-radius: $border-radius; } @if $sass-burger-add-vendor-prefixes { @include prefix(transition-property, background-color, webkit moz o); } transition-property: background-color, transform; @if $sass-burger-add-vendor-prefixes { @include prefix(transition-duration, $transition-duration, webkit moz o); } transition-duration: $transition-duration; } &::before, &::after { position: absolute; content: ""; } &::before { top: -($height + $gutter); } &::after { top: $height + $gutter; } } // Burger animations @mixin burger-to-cross($color: auto) { & { background-color: transparent; } @if ($color != auto) { &::before, &::after { background-color: $color; } } &::before { @if $sass-burger-add-vendor-prefixes { @include prefix(transform, translateY($burger-gutter + $burger-height) rotate(45deg), webkit moz ms o); } transform: translateY($burger-gutter + $burger-height) rotate(45deg); } &::after { @if $sass-burger-add-vendor-prefixes { @include prefix(transform, translateY(-($burger-gutter + $burger-height)) rotate(-45deg), webkit moz ms o); } transform: translateY(-($burger-gutter + $burger-height)) rotate(-45deg); } } .burger { display: inline-block; position: relative; width: 60px; height: 60px; z-index: 100; span { @include burger(20px, 2px, 4px, $black); position: absolute; top: 50%; left: 50%; margin-left: -10px; margin-top: -1.5px; } &.clicked { span { @include burger-to-cross(); &:before, &:after { background-color: $black; } } } &.burger-dot { @include shadow; background: $white; border-radius: 50%; } &:hover { cursor: pointer; } } // Overlay .overlay-menu { @include transition(.5s); @include translate(0,100%); visibility: hidden; position: fixed; top: 0; right: 0; bottom: 0; left: 0; background: rgba($black,.75); z-index: 90; overflow: hidden; &.opened { @include translate(0,0); visibility: visible; } } .overlay-nav { list-style: none; padding: 0; a { font-size: 30px; line-height: 2em; } } .wrapper { @include transition(.5s); &.push { @include scale(.8); } }