From 3d5cbf7eaf8e7d14d8d54acbc7ffe34292aa2262 Mon Sep 17 00:00:00 2001 From: Dominik George <dominik.george@teckids.org> Date: Sun, 11 Jun 2023 16:41:39 +0200 Subject: [PATCH] Make navbar responsive --- sass/menu.scss | 30 +++++++++++++++++++++++++++++ sass/style.scss | 2 ++ templates/base.html | 38 +------------------------------------ templates/menu.html | 46 +++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 79 insertions(+), 37 deletions(-) create mode 100644 sass/menu.scss create mode 100644 templates/menu.html diff --git a/sass/menu.scss b/sass/menu.scss new file mode 100644 index 00000000..4ba4c68e --- /dev/null +++ b/sass/menu.scss @@ -0,0 +1,30 @@ +// https://codepen.io/Nikitoss334/details/KLxaJK +// FIXME clarify license + +.navbar-toggle { + display: none; +} + +.navbar .navbar-toggle:checked { + &+.navbar-brand .navbar-burger { + & span:nth-child(1) { + -webkit-transform: translateY(5px) rotate(45deg); + transform: translateY(5px) rotate(45deg); + } + + & span:nth-child(2) { + opacity: 0; + } + + & span:nth-child(3) { + -webkit-transform: translateY(-5px) rotate(-45deg); + transform: translateY(-5px) rotate(-45deg); + } + } + + &~.navbar-menu { + @media screen and (max-width: 1024px) { + display: block; + } + } +} \ No newline at end of file diff --git a/sass/style.scss b/sass/style.scss index a0545076..fff72710 100644 --- a/sass/style.scss +++ b/sass/style.scss @@ -3,3 +3,5 @@ $family-sans-serif: "Roboto", sans-serif; @import "../node_modules/bulma/bulma.sass"; + +@import "./menu.scss" diff --git a/templates/base.html b/templates/base.html index 187865e3..e1383f8f 100644 --- a/templates/base.html +++ b/templates/base.html @@ -18,43 +18,7 @@ <body class="has-navbar-fixed-top"> <header> - <nav class="navbar is-fixed-top is-transparent" role="navigation" aria-label="main navigation"> - <div class="navbar-brand"> - <a href="{{ get_url(path="@/_index.md") }}" class="navbar-item">{{ config.title }}</a> - </div> - - <div class="navbar-menu"> - <div class="navbar-start"> - <div class="navbar-item has-dropdown is-hoverable"> - <a href="#" class="navbar-item">Projekte</a> - <div class="navbar-dropdown"> - TBA - </div> - </div> - - <div class="navbar-item has-dropdown is-hoverable"> - <a href="#" class="navbar-item">Informationen für…</a> - <div class="navbar-dropdown"> - TBA - </div> - </div> - - <div class="navbar-item has-dropdown is-hoverable"> - <a href="#" class="navbar-item">Teckids-Gemeinschaft</a> - <div class="navbar-dropdown"> - TBA - </div> - </div> - - <div class="navbar-item has-dropdown is-hoverable"> - <a href="#" class="navbar-item">Updates</a> - <div class="navbar-dropdown"> - TBA - </div> - </div> - </div> - </div> - </nav> + {% include "menu.html" %} </header> <main> diff --git a/templates/menu.html b/templates/menu.html new file mode 100644 index 00000000..01b36d9b --- /dev/null +++ b/templates/menu.html @@ -0,0 +1,46 @@ +<nav class="navbar is-fixed-top is-transparent" role="navigation" aria-label="main navigation"> + <input type="checkbox" id="burger-toggle" role="button" class="navbar-toggle" aria-label="menu" aria-expanded="false" data-target="main-menu" /> + <div class="navbar-brand"> + <a href="{{ get_url(path="@/_index.md") }}" class="navbar-item"> + {{ config.title }} + </a> + + <label for="burger-toggle" class="navbar-burger"> + <span aria-hidden="true"></span> + <span aria-hidden="true"></span> + <span aria-hidden="true"></span> + </label> + </div> + + <div class="navbar-menu" id="main-menu"> + <div class="navbar-start"> + <div class="navbar-item has-dropdown is-hoverable"> + <a href="#" class="navbar-item">Projekte</a> + <div class="navbar-dropdown"> + TBA + </div> + </div> + + <div class="navbar-item has-dropdown is-hoverable"> + <a href="#" class="navbar-item">Informationen für…</a> + <div class="navbar-dropdown"> + TBA + </div> + </div> + + <div class="navbar-item has-dropdown is-hoverable"> + <a href="#" class="navbar-item">Teckids-Gemeinschaft</a> + <div class="navbar-dropdown"> + TBA + </div> + </div> + + <div class="navbar-item has-dropdown is-hoverable"> + <a href="#" class="navbar-item">Updates</a> + <div class="navbar-dropdown"> + TBA + </div> + </div> + </div> + </div> +</nav> \ No newline at end of file -- GitLab