prevent navbar from disappearing without adding "bg-dark"

Viewed 205

I am building a website with laravel and bootstrap. I have a navbar at the top of the page. by default the class is set to navbar-light, but since i want to have a dark and transparent navbar i changed navbar-light to navbar-dark to prevent a white bar i also removed the class bg-white.

I have read here that if you add the class bg-dark you can prevent the navbar from disappearing when resizing the window. However, this causes the navbar to no longer be transparent.

Is there a way to prevent the navbar from disappearing and still have a transparent navbar?

If it helps answer my question here you can see my code

<nav class="navbar navbar-expand-md navbar-dark shadow-sm">
    <div class="container">
        <a class="navbar-brand" href="{{ url('/') }}">
            {{ config('app.name', 'Laravel') }}
        </a>
        <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="{{ __('Toggle navigation') }}">
            <span class="navbar-toggler-icon"></span>
        </button>

        <div class="collapse navbar-collapse" id="navbarSupportedContent">
            <!-- Left Side Of Navbar -->
            <ul class="navbar-nav mr-auto">

            </ul>

            <!-- Right Side Of Navbar -->
            <ul class="navbar-nav ml-auto">
                <!-- Authentication Links -->
                @guest
                    @if (Route::has('login'))
                        <li class="nav-item">
                            <a class="nav-link" href="{{ route('login') }}">{{ __('Login') }}</a>
                        </li>
                    @endif

                    @if (Route::has('register'))
                        <li class="nav-item">
                            <a class="nav-link" href="{{ route('register') }}">{{ __('Register') }}</a>
                        </li>
                    @endif
                @else
                    <li class="nav-item dropdown">
                        <a id="navbarDropdown" class="nav-link dropdown-toggle" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" v-pre>
                            {{ Auth::user()->name }}
                        </a>

                        <div class="dropdown-menu dropdown-menu-right" aria-labelledby="navbarDropdown">
                            <a class="dropdown-item" href="{{ route('logout') }}"
                                onclick="event.preventDefault();
                                                document.getElementById('logout-form').submit();">
                                {{ __('Logout') }}
                            </a>

                            <form id="logout-form" action="{{ route('logout') }}" method="POST" class="d-none">
                                @csrf
                            </form>
                        </div>
                    </li>
                @endguest
            </ul>
        </div>
    </div>
</nav>
1 Answers

I solved it!

I think it's not pretty but it works. I added a new class to my navbar myNavbar.

After that I added a <style> block in my head area.

<style>
    .myNavbar {
        background-color: transparent !important;
        position: relative;
        width: 100%;
    }
    @media (min-width: 768px) {
        .myNavbar {
            position: absolute;
        }
    }

    @media (min-width: 991px) {
        .myNavbar {
            position: relative;
        }
    }

    @media (max-width: 768px) {
        .myNavbar {
            position: absolute;
        }
    }
</style>

My new tag looks like that

<nav class="navbar navbar-expand-md navbar-dark myNavbar">

Now my navbar no longer disappears. As I said there is probably a better solution, if you know one please comment it.

Related