285 lines
5.6 KiB
SCSS
285 lines
5.6 KiB
SCSS
@keyframes menu_show {
|
||
from {
|
||
display: none;
|
||
opacity: 0.0;
|
||
}
|
||
0% {
|
||
display: block;
|
||
}
|
||
to {
|
||
display: block;
|
||
opacity: 1.0;
|
||
}
|
||
}
|
||
@keyframes menu_hide {
|
||
from {
|
||
display: none;
|
||
opacity: 0.0;
|
||
}
|
||
0% {
|
||
display: block;
|
||
}
|
||
to {
|
||
display: block;
|
||
opacity: 1.0;
|
||
}
|
||
}
|
||
|
||
// --------------------------------------------------------------------------------
|
||
// Header
|
||
// --------------------------------------------------------------------------------
|
||
#header {
|
||
padding: 5px;
|
||
background: $theme-header-background;
|
||
color: $theme-header-color;
|
||
}
|
||
|
||
#header > .content {
|
||
display: grid;
|
||
grid-template-columns: min-content auto;
|
||
max-width: $theme-width;
|
||
margin-left: auto;
|
||
margin-right: auto;
|
||
}
|
||
|
||
// --------------------------------------------------------------------------------
|
||
// Header > Logo
|
||
// --------------------------------------------------------------------------------
|
||
#header > .content .logo {
|
||
display: grid;
|
||
grid-template-columns: auto 1fr;
|
||
margin: 0 20px 0 0;
|
||
padding: 0;
|
||
}
|
||
|
||
#header > .content .logo > .icon {
|
||
justify-self: stretch;
|
||
align-self: stretch;
|
||
height: 90px;
|
||
margin: 0 10px 0 0;
|
||
padding: 0;
|
||
}
|
||
|
||
#header > .content .logo > figcaption {
|
||
justify-self: left;
|
||
align-self: center;
|
||
margin: 0;
|
||
padding: 0;
|
||
font-family: "Oswald";
|
||
font-size: 2.0rem;
|
||
font-weight: bold;
|
||
text-transform: uppercase;
|
||
letter-spacing: .20ch;
|
||
}
|
||
|
||
// --------------------------------------------------------------------------------
|
||
// Header > Navigation
|
||
// --------------------------------------------------------------------------------
|
||
#navigation {
|
||
font-size: 1.0rem;
|
||
color: $theme-menu-color;
|
||
}
|
||
|
||
#navigation .menu {
|
||
list-style: none inside;
|
||
}
|
||
|
||
#navigation .menu > .entry > .item {
|
||
color: $theme-menu-color;
|
||
}
|
||
#navigation .menu > .entry > .item:hover,
|
||
#navigation .menu > .entry > .item:active,
|
||
#navigation .menu > .entry > .item:focus {
|
||
color: $theme-menu-color-active;
|
||
}
|
||
#navigation .menu > .entry > .item {
|
||
/* Menu - Entry Style */
|
||
display: block;
|
||
padding: .67em .67em;
|
||
white-space: nowrap;
|
||
cursor: pointer;
|
||
}
|
||
#navigation .menu > .entry > span.item {
|
||
cursor: default;
|
||
}
|
||
|
||
// Responsive Layout
|
||
@media (max-width: 767px), (hover: none), (hover: on-demand) {
|
||
#navigation-toggle {
|
||
justify-self: stretch;
|
||
align-self: center;
|
||
display: block;
|
||
margin: 0;
|
||
padding: 0rem 2.5rem;
|
||
text-align: right;
|
||
font-size: 3.0rem;
|
||
color: $theme-menu-color;
|
||
}
|
||
|
||
#navigation {
|
||
grid-column-start: span 2;
|
||
}
|
||
|
||
// Show/Hide menu
|
||
#navigation {
|
||
display: none;
|
||
}
|
||
#navigation.open {
|
||
display: block;
|
||
}
|
||
|
||
#navigation .menu {
|
||
margin: 0;
|
||
padding: 0;
|
||
background: transparent;
|
||
}
|
||
|
||
#navigation .menu .menu {
|
||
padding-left: 1.5rem;
|
||
background: $theme-menu-background;
|
||
box-shadow: 2px 2px 5px 0px black;
|
||
}
|
||
#navigation .menu .menu > .entry > .item:hover,
|
||
#navigation .menu .menu > .entry > .item:focus,
|
||
#navigation .menu .menu > .entry > .item:active {
|
||
/* Menu - Entry Style Hover/Active */
|
||
background: $theme-menu-light-background;
|
||
}
|
||
|
||
#navigation .menu > .entry > .item {
|
||
padding: 1em 1em;
|
||
transition: color 250ms linear;
|
||
}
|
||
}
|
||
|
||
@media (min-width: 768px) and (hover: hover) {
|
||
#navigation-toggle {
|
||
display: none;
|
||
}
|
||
|
||
#navigation {
|
||
justify-self: stretch;
|
||
align-self: center;
|
||
}
|
||
|
||
/* Menu - Base Style */
|
||
#navigation .menu {
|
||
/* Menu - Menu Style */
|
||
position: absolute;
|
||
margin: 0;
|
||
padding: .25em .25em;
|
||
z-index: 1;
|
||
|
||
background: $theme-menu-background;
|
||
box-shadow: 2px 2px 5px 2px black;
|
||
|
||
text-transform: none;
|
||
}
|
||
|
||
#navigation .menu > .entry {
|
||
/* Menu - Entry Style */
|
||
display: block;
|
||
margin: 0;
|
||
padding: 0;
|
||
|
||
cursor: default;
|
||
}
|
||
#navigation .menu > .entry:hover,
|
||
#navigation .menu > .entry:focus,
|
||
#navigation .menu > .entry:active {
|
||
/* Menu - Entry Style Hover/Active */
|
||
background: $theme-menu-light-background;
|
||
}
|
||
|
||
#navigation .has-menu > .menu {
|
||
/* Menu - Sub-menu Style */
|
||
position: absolute;
|
||
display: none;
|
||
min-width: 5em;
|
||
|
||
pointer-events: none;
|
||
|
||
animation-name: menu_hide;
|
||
animation-duration: 100ms;
|
||
animation-fill-mode: both;
|
||
animation-direction: reverse;
|
||
}
|
||
#navigation .has-menu:hover > .menu,
|
||
#navigation .has-menu > .menu:hover,
|
||
#navigation .has-menu:focus > .menu,
|
||
#navigation .has-menu > .menu:focus,
|
||
#navigation .has-menu:active > .menu,
|
||
#navigation .has-menu > .menu:active {
|
||
/* Menu - Sub-menu Style (Active) */
|
||
display: block;
|
||
|
||
pointer-events: auto;
|
||
|
||
animation-name: menu_show;
|
||
animation-duration: 100ms;
|
||
animation-fill-mode: both;
|
||
animation-direction: normal;
|
||
}
|
||
|
||
#navigation .has-menu > .menu > .has-menu > span:after,
|
||
#navigation .has-menu > .menu > .has-menu > a:after {
|
||
/* Menu - Entry with Sub-Menu inside of Top-Level Menu */
|
||
content: "❯";
|
||
}
|
||
|
||
#navigation .has-menu > .menu > .has-menu > .menu {
|
||
/* Menu - Sub-Menu in Sub-Menu */
|
||
left: calc(100% - .5em);
|
||
margin-top: -2.75em;
|
||
z-index: 2;
|
||
}
|
||
|
||
/* 1st Level Menu */
|
||
#navigation > .menu {
|
||
position: relative;
|
||
z-index: auto;
|
||
text-transform: uppercase;
|
||
background: transparent;
|
||
box-shadow: none;
|
||
}
|
||
#navigation > .menu > .entry {
|
||
display: inline-block;
|
||
padding: 0.25em 0;
|
||
margin: 0;
|
||
background: transparent;
|
||
}
|
||
#navigation > .menu > .entry:hover,
|
||
#navigation > .menu > .entry:active,
|
||
#navigation > .menu > .entry:focus {
|
||
background: transparent;
|
||
}
|
||
#navigation > .menu > .has-menu > .menu {
|
||
top: 2.0em;
|
||
}
|
||
#navigation > .menu > .entry > .item {
|
||
padding: .5em .25em;
|
||
}
|
||
|
||
|
||
/* Menu with Menu
|
||
|
||
|
||
#navigation .menu > li > .menu {
|
||
display: block;
|
||
position: absolute;
|
||
padding: 0px .5em;
|
||
margin: 0;
|
||
cursor: auto;
|
||
background: $theme-menu-background;
|
||
box-shadow: 2px 2px 5px 0px black;
|
||
}
|
||
|
||
#navigation .menu > li > .menu > li {
|
||
display: block;
|
||
padding: 0 .5em;
|
||
margin: 0;
|
||
}
|
||
*/
|
||
|
||
}
|