Michael74
Michael74

Reputation: 33

Bootstrap 4 Navbar <li> List

I need some help with the bootstrap Navbar (Bootstrap v4.0.0-beta.3).

What do I have to change so that the button text is single-line and not among each other. When the line is full, the other buttons should start on the left of the next line.

Currently I use this code:

<nav class="navbar navbar-expand-lg navbar-light bg-secondary">
    <div class="container">
        <div class="row w-100 no-gutters d-lg-block d-flex flex-wrap justify-content-between">
            <a class="navbar-brand col-lg-3 col-7 py-lg-3 order-lg-1 order-2 float-left d-block" href="#">
                Project Name
            </a>
            <div class="navbar-text col-lg-6 col-12 order-lg-2 order-1 text-right float-right align-self-end">Fix Nav Info</div>
            <button class="navbar-toggler collapsed float-right order-3" type="button" data-toggle="collapse" data-target="#all-pages-176" aria-controls="all-pages-176" aria-expanded="false" aria-label="Toggle navigation">
                <span class="navbar-toggler-icon"></span>
            </button>
            <div id="all-pages-176" class="navbar-collapse collapse float-right col-lg-12 order-4" style="height: auto;">
                <ul id="menu-all-pages" class="navbar-nav ml-auto">
                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>
                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>
                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>
                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>
                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>

                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>
                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>
                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>
                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>
                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>

                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>
                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>
                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>
                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>
                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>

                </ul>

            </div>
        </div>
    </div>
</nav>  

Stylesheets:

@media (min-width: 992px) {
    .nav-item {
        float: left;
        font-size: 13px;
        margin: 3px;
        padding: 0px;
        border: 1px solid #605555;
        -webkit-border-radius: 3px;
        -moz-border-radius: 3px;
        border-radius: 3px; 
    }
}

The Result:

my result

it should be so

shoul be so

Upvotes: 2

Views: 994

Answers (1)

WebDevBooster
WebDevBooster

Reputation: 14964

To achieve the effect you are looking for, you just need to add the d-lg-inline-block class to the ul element:

It turns list items into inline-block elements from the large (lg) breakpoint onwards which is what makes them wrap the way you described.

Here's the full, working code snippet:

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">

<style>
    @media (min-width: 992px) {
        .nav-item {
            font-size: 13px;
            margin: 3px;
            padding: 0px;
            border: 1px solid #605555;
            -webkit-border-radius: 15px;
            -moz-border-radius: 15px;
            border-radius: 15px;
            line-height: 8px;
        }
    }
</style>

<nav class="navbar navbar-expand-lg navbar-light bg-secondary">
    <div class="container">
        <div class="row w-100 no-gutters d-lg-block d-flex flex-wrap justify-content-between">
            <a class="navbar-brand col-lg-3 col-7 py-lg-3 order-lg-1 order-2 float-left d-block" href="#">
                Project Name
            </a>
            <div class="navbar-text col-lg-6 col-12 order-lg-2 order-1 text-right float-right align-self-end">Fix Nav Info</div>
            <button class="navbar-toggler collapsed float-right order-3" type="button" data-toggle="collapse" data-target="#all-pages-176" aria-controls="all-pages-176" aria-expanded="false" aria-label="Toggle navigation">
                <span class="navbar-toggler-icon"></span>
            </button>
            <div id="all-pages-176" class="navbar-collapse collapse float-right col-lg-12 order-4" style="height: auto;">
                <ul id="menu-all-pages" class="navbar-nav d-lg-inline-block ml-auto">
                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>
                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>
                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>
                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>
                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>

                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>
                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>
                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>
                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>
                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>

                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>
                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>
                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>
                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>
                    <li class="nav-item float-left"><a class="nav-link" href="link.php/">Link Text Here</a></li>

                </ul>
            </div>
        </div>
    </div>
</nav>

<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js" integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl" crossorigin="anonymous"></script>

Upvotes: 1

Related Questions