hugo-theme-re-terminal/assets/css/menu.scss

167 lines
2.5 KiB
SCSS
Raw Permalink Normal View History

2022-11-07 23:34:01 +00:00
@mixin menu {
--shadow-color: color-mix(in srgb, var(--background), transparent 20%);;
2022-11-07 23:34:01 +00:00
display: none;
flex-direction: column;
--shadow: 0 10px var(--shadow-color), -10px 10px var(--shadow-color), 10px 10px var(--shadow-color);
2022-11-07 23:34:01 +00:00
position: absolute;
2024-07-30 15:39:09 +00:00
background: var(--background);
box-shadow: var(--shadow);
color: var(--color);
2022-11-07 23:34:01 +00:00
border: 2px solid;
margin: 0;
padding: 10px;
top: 10px;
left: 0;
list-style: none;
z-index: 99;
}
@mixin header-menu-trigger {
2024-07-30 15:39:09 +00:00
color: var(--accent);
2022-11-07 23:34:01 +00:00
border: 2px solid;
margin-left: 10px;
height: 100%;
padding: 3px 8px;
margin-bottom: 0 !important;
position: relative;
cursor: pointer;
}
.navigation-menu {
display: flex;
align-items: flex-start;
justify-content: space-between;
margin: 20px 1px;
2024-07-30 15:39:09 +00:00
@media (var(--phone)) {
2022-11-07 23:34:01 +00:00
margin: 0;
}
&__inner {
display: flex;
flex: 1;
flex-wrap: wrap;
list-style: none;
margin: 0;
padding: 0;
> li {
flex: 0 0 auto;
margin-bottom: 10px;
2022-11-13 22:36:26 +00:00
white-space: nowrap;
2022-11-07 23:34:01 +00:00
&:not(:last-of-type) {
margin-right: 20px;
}
}
2024-07-30 15:39:09 +00:00
@media (var(--phone)) {
2022-11-07 23:34:01 +00:00
flex-direction: column;
align-items: flex-start;
padding: 0;
li {
margin: 0;
padding: 5px;
}
}
}
.spacer {
flex-grow: 1 !important;
}
}
.menu {
display: flex;
flex-direction: column;
position: relative;
list-style: none;
padding: 0;
margin: 0;
&__trigger {
margin-right: 0 !important;
2024-07-30 15:39:09 +00:00
color: var(--accent);
2022-11-07 23:34:01 +00:00
user-select: none;
cursor: pointer;
}
2024-08-02 13:35:24 +00:00
&__subdrop {
&--title {
padding: 5px;
}
&--list {
list-style-type: unset;
}
}
2022-11-07 23:34:01 +00:00
&__dropdown {
@include menu;
.open & {
display: flex;
}
> li {
flex: 0 0 auto;
&:not(:last-of-type) {
margin-bottom: 10px;
}
a {
display: flex;
padding: 5px;
}
}
}
&--desktop {
2024-07-30 15:39:09 +00:00
@media (var(--phone)) {
2022-11-07 23:34:01 +00:00
display: none
}
}
&--mobile {
.menu__trigger {
@include header-menu-trigger;
display: none;
2024-07-30 15:39:09 +00:00
@media (var(--phone)) {
2022-11-07 23:34:01 +00:00
display: block;
}
}
.menu__dropdown {
2024-07-30 15:39:09 +00:00
@media (var(--phone)) {
2022-11-07 23:34:01 +00:00
left: auto;
right: 0;
}
}
li {
flex: 0 0 auto;
&:not(:last-of-type) {
margin-bottom: 10px;
}
}
}
&--language-selector {
.menu__trigger {
@include header-menu-trigger;
2024-07-30 15:39:09 +00:00
@media (var(--phone)) {
2022-11-07 23:34:01 +00:00
display: none;
}
}
.menu__dropdown {
left: auto;
right: 0;
}
}
}