1

I have a Bootstrap 4 website with a navbar. The navbar has a brand part with an image and title text, and then there's the rest of the navbar. You can see it here: https://jsfiddle.net/zmbq/aq9Laaew/218793/

Now, I want to add a subtitle, under the title "A Digital Onomasticon". The problem is - the substitle is long, and I want it to extend below the nav links.

I tried everything I could think of and couldn't figure out how to do that.

NOTE: the answer to this question is not sufficient, as it yields something like this: https://jsfiddle.net/zmbq/7et2uz0w/

Carol Skelly
  • 351,302
  • 90
  • 710
  • 624
zmbq
  • 38,013
  • 14
  • 101
  • 171

2 Answers2

1

You can set the subtitle to position absolute to remove it from the normal content flow. It's unclear how it should look on mobile, I simply hide it in the media query. Example:

<a class="navbar-brand" href="#">
  <img src="http://onomasticon.researchsoftwarehosting.org/assets/images/seal-impression.png">
  A Digital Onomasticon
  <small>A lot more text that goes under the links and should be cleverly placed, and isn't</small>
</a>

.navbar-brand small {
  display: block;
  font-size: 10px;
  white-space: normal;
  position: absolute;
}

@media (max-width: 575.98px) {
  .navbar-brand small {
    display: none;
  }
}

JsFiddle

Stickers
  • 75,527
  • 23
  • 147
  • 186
1

Wrap the brand and links in a separate flexbox (d-flex) div...

<nav class="navbar navbar-light bg-light navbar-expand-sm flex-nowrap align-items-start">
    <a class="navbar-brand" href="#">
        <img src="http://onomasticon.researchsoftwarehosting.org/assets/images/seal-impression.png">
    </a>
    <div class="d-flex flex-column">
        <div class="d-sm-flex d-block flex-nowrap">
            <a class="navbar-brand" href="#">A Digital Onomasticon</a>
            <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNav" aria-controls="navbarOnavbarNavptions" aria-expanded="false" aria-label="Toggle navigation">
                <span class="navbar-toggler-icon"></span>
            </button>
            <div class="collapse navbar-collapse" id="navbarNav">
                <ul class="navbar-nav">
                    <li class="nav-item">
                        <a class="nav-link" href="#">Item one</a>
                    </li>
                    <li class="nav-item">
                        <a class="nav-link" href="#">Item two</a>
                    </li>
                    <li class="nav-item">
                        <a class="nav-link" href="#">Item three</a>
                    </li>
                </ul>
            </div>
        </div>
        <small>A lot more text that goes under the links and should be cleverly placed, and isn't</small>
    </div>
</nav>

https://www.codeply.com/go/9SK8ItOyzw


Related: Bootstrap 4 navbar with 2 rows

Carol Skelly
  • 351,302
  • 90
  • 710
  • 624
  • Any idea on how to combine this with right-aligning (some) nav items? When I added flex for the overall layout, my
  • – Kostya Vasilyev Jul 06 '19 at 09:58