diff --git a/assets/scss/academic/_nav.scss b/assets/scss/academic/_nav.scss index d70afa40..52542993 100644 --- a/assets/scss/academic/_nav.scss +++ b/assets/scss/academic/_nav.scss @@ -13,6 +13,14 @@ left: 0; z-index: 1030; + // Remove Bootstrap's navbar v-padding and assign v-padding to logo separately to maximise logo size. + // Otherwise, Bootstrap's navbar v-padding causes issue with logo fitting within fixed 50px height bar in md-lg sizes. + padding: 0 1rem; + + .nav-item { + // For z-index compatibility with logo on mobile layout, otherwise nav-item can't be clicked when logo present. + position: relative; + } @include media-breakpoint-down(md) { height: 50px; @@ -67,6 +75,8 @@ // Remove Bootstrap's border from Toggle button. .navbar-toggler { border: 0 !important; + position: relative; // For z-index clickable mobile logo. + z-index: 1030; } .navbar-toggler:focus, .navbar-toggler:active { @@ -97,9 +107,12 @@ */ .navbar-brand { - padding-top: 0; - padding-bottom: 0; + // Set v-padding to 5px to align with 50/70px responsive max navbar heights. + padding-top: 5px; + padding-bottom: 5px; font-weight: bold; + position: relative; + z-index: 1030; // For z-index clickable mobile logo. } // Dynamically fit logo image to space available. @@ -111,6 +124,7 @@ height: -webkit-fill-available; height: -webkit-stretch; height: stretch; + max-height: 60px; // For lg+ responsive sizing. 60px height +10px v-padding = 70px max-width: fit-content; // Must override default responsive image style. } @@ -119,13 +133,18 @@ } @include media-breakpoint-down(md) { - .navbar-brand { - max-width: fit-content; - margin: 0 auto; + // Used in conjunction with mobile .navbar-brand to center logo on mobile. + .navbar-brand-mobile-wrapper { position: absolute; left: 0; right: 0; - display: inline-block; + } + .navbar-brand { + // Center logo in mobile navbar. + margin: 0 auto; + } + .navbar-brand img { + max-height: 40px; // 40px height + 10px v-padding = 50px. } .navbar-toggler { border-color: transparent; // Remove Bootstrap's border from Toggle button. @@ -135,7 +154,7 @@ padding-left: 0; } .navbar-collapse { - z-index: 9999 !important; + z-index: 1031 !important; // Appear just over navbar. position: absolute; left: 0; top: 50px; @@ -174,6 +193,7 @@ ul.nav-icons li.nav-item a.nav-link { .dropdown-menu { background-color: $sta-menu-primary !important; color: $sta-menu-text !important; + z-index: 1032; // I18n dropdown over mobile expanded menu. } .dropdown-item { diff --git a/layouts/partials/navbar.html b/layouts/partials/navbar.html index dd18fb5e..e4977fe4 100644 --- a/layouts/partials/navbar.html +++ b/layouts/partials/navbar.html @@ -1,10 +1,10 @@ {{ $current_page := . }} +{{ $show_logo := site.Params.main_menu.show_logo | default true }}