Compare commits

...

3 Commits

Author SHA1 Message Date
b19740d7e4 feat: WIP: DropDown via JS implementiert.
Sieht noch scheiße aus, soll zum Test, ob das grundsätzlich geht aber reichen.
2024-01-21 21:42:06 +01:00
15568aeb5d chore: var durch let ersetzt. 2024-01-21 21:40:37 +01:00
a24ef62c30 feat: Reenable CSS to get drop down menu items back. 2024-01-21 20:24:28 +01:00
4 changed files with 69 additions and 15 deletions

View File

@ -81,10 +81,10 @@ body {
} }
.primary_nav__toggle p { .primary_nav__toggle p {
margin: 0; margin: 0.5rem 0 0 0;
padding: 0 0 0 0; padding: 0;
position: relative; position: relative;
right: 0.5rem; left: -0.2rem;
bottom: 0.65rem; bottom: 0.65rem;
color: var(--wtf-nearly-black); color: var(--wtf-nearly-black);
} }
@ -105,20 +105,47 @@ body {
font-size: 1.25rem; font-size: 1.25rem;
} }
.primary_nav__navlink.-active { .primary_nav__navlink.-active,
.primary_nav__sub_navlink.-active {
color: var(--wtf-orange); color: var(--wtf-orange);
text-decoration: underline; text-decoration: underline;
} }
.primary_nav__navitem.-last, .primary_nav__navitem.-last a {
margin-right: 0;
padding-right: 0;
}
.primary_nav__navlink { .primary_nav__navlink {
color: var(--wtf-nearly-black); color: var(--wtf-nearly-black);
} }
.primary_nav__sub_navlink {
color: var(--wtf-nearly-white);
}
.primary_nav__navlink:hover { .primary_nav__navlink:hover {
color: var(--wtf-mid-grey); color: var(--wtf-mid-grey);
text-decoration: underline; text-decoration: underline;
} }
.primary_nav__sub_navlist.-closed {
display: none;
z-index: 20;
}
.primary_nav__sub_navlist.-open {
display: block;
margin: 2.6rem 0 0 -0.5rem;
padding: 0;
position: absolute;
background-color: var(--wtf-dark-blue);
border-left: 2px solid var(--wtf-mid-grey);
border-right: 2px solid var(--wtf-mid-grey);
border-bottom: 2px solid var(--wtf-mid-grey);
box-shadow: 5px 5px 15px 0px rgba(0, 0, 0, 0.35);
}
/* /*
* Gleicht zusammen mit padding von .primary_nav__navitem die Verschiebung durch * Gleicht zusammen mit padding von .primary_nav__navitem die Verschiebung durch
* Submenümarker aus. * Submenümarker aus.
@ -148,6 +175,13 @@ body {
border-right: 3px solid var(--wtf-nearly-black); border-right: 3px solid var(--wtf-nearly-black);
} }
.primary_nav__sub_navitem {
margin: 0;
padding: 0.5rem 0.5rem;
list-style: none;
text-align: left;
}
.header__secondary_nav { .header__secondary_nav {
margin: 4.5rem 0.5rem 0 0; margin: 4.5rem 0.5rem 0 0;
} }

View File

@ -1,8 +1,22 @@
document.getElementsByClassName('primary_nav__toggle')[0].addEventListener('click', function(){ document.getElementsByClassName('primary_nav__toggle')[0].addEventListener('click', function(){
var nav_list = document.getElementsByClassName('primary_nav__navlist')[0] let nav_list = document.getElementsByClassName('primary_nav__navlist')[0]
if (nav_list.style.display === 'block') { if (nav_list.style.display === 'block') {
nav_list.style.display = 'none'; nav_list.style.display = 'none';
} else { } else {
nav_list.style.display = 'block'; nav_list.style.display = 'block';
} }
}); });
let primary_menu_items = document.getElementsByClassName('primary_nav__navitem');
for (let i = 0; i < primary_menu_items.length; i++) {
primary_menu_items[i].addEventListener('click', function(event) {
let dropdown = event.currentTarget.firstElementChild;
if (dropdown.classList.contains('-closed')) {
dropdown.classList.remove('-closed');
dropdown.classList.add('-open');
} else {
dropdown.classList.remove('-open');
dropdown.classList.add('-closed');
}
});
}

View File

@ -1,12 +1,14 @@
{ {
"Was wir tun": { "Was wir tun": {
"href": "/about", "href": "/about",
"slug": "about",
"visible": true, "visible": true,
"list_childs": false, "list_childs": false,
"items": {} "items": {}
}, },
"Was geht ab?": { "Was geht ab?": {
"href": "/aktuelles", "href": "/aktuelles",
"slug": "aktuelles",
"visible": true, "visible": true,
"list_childs": false, "list_childs": false,
"items": { "items": {
@ -16,8 +18,9 @@
}, },
"Mitglied werden": { "Mitglied werden": {
"href": "/mitglieder", "href": "/mitglieder",
"slug": "mitglieder",
"visible": true, "visible": true,
"list_childs": false, "list_childs": true,
"items": { "items": {
"Satzung": "/mitglieder/satzung", "Satzung": "/mitglieder/satzung",
"Mitglied werden": "/mitglieder/beitreten" "Mitglied werden": "/mitglieder/beitreten"

View File

@ -12,7 +12,11 @@
<ul class="primary_nav__navlist"> <ul class="primary_nav__navlist">
{% for title, mapping in bag("navigation").items() %} {% for title, mapping in bag("navigation").items() %}
{% if mapping.visible|default(true) %} {% if mapping.visible|default(true) %}
<li class="primary_nav__navitem"> <li id="{{ mapping.slug }}" class="primary_nav__navitem">
{{ title }}
{% if mapping.list_childs %}
<ul class="primary_nav__sub_navlist -closed">
<li>
<a class="primary_nav__navlink {% if this._path == mapping.href or <a class="primary_nav__navlink {% if this._path == mapping.href or
this._path in mapping['items'].values() or this._path in mapping['items'].values() or
title == 'Aktuelles' and title == 'Aktuelles' and
@ -20,8 +24,7 @@
%}-active{% endif %}" href="{{ mapping.href|url }}"> %}-active{% endif %}" href="{{ mapping.href|url }}">
{{ title }} {{ title }}
</a> </a>
{% if mapping.list_childs %} </li>
<ul class="primary_nav__sub_navlist">
{% set sub_menu = mapping['items'].items() %} {% set sub_menu = mapping['items'].items() %}
{% for sub_title, href in sub_menu %} {% for sub_title, href in sub_menu %}
<li class="primary_nav__sub_navitem"> <li class="primary_nav__sub_navitem">