Navbars are responsive meta components that serve as navigation headers for your application or site.
Contents in collapse
slot can be collapsed (and are toggleable) in mobile views and become horizontal as the available viewport width increases.
<navbar>
<a class="navbar-brand" slot="brand" href="#">Brand</a>
<template slot="collapse">
<navbar-nav>
<li class="active"><a role="button">Link <span class="sr-only">(current)</span></a></li>
<li><a role="button">Link</a></li>
</navbar-nav>
<navbar-form left>
<div class="form-group">
<input type="text" class="form-control" placeholder="Search">
</div>
<btn>Submit</btn>
</navbar-form>
<navbar-nav right>
<li><a role="button">Link</a></li>
<dropdown tag="li">
<a class="dropdown-toggle" role="button">Dropdown <span class="caret"></span></a>
<template slot="dropdown">
<li><a role="button">Action</a></li>
<li><a role="button">Another action</a></li>
<li><a role="button">Something else here</a></li>
<li role="separator" class="divider"></li>
<li><a role="button">Separated link</a></li>
</template>
</dropdown>
</navbar-nav>
</template>
</navbar>
<!-- navbar-example.vue -->
Replace the navbar brand with your own image by swapping the text for an <img>
. Since the .navbar-brand
has its own padding and height, you may need to override some CSS depending on your image.
<navbar>
<a class="navbar-brand" slot="brand" href="#">
<img alt="Brand" style="height: 100%; width: auto" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAB+0lEQVR4AcyYg5LkUBhG+1X2PdZGaW3btm3btm3bHttWrPomd1r/2Jn/VJ02TpxcH4CQ/dsuazWgzbIdrm9dZVd4pBz4zx2igTaFHrhvjneVXNHCSqIlFEjiwMyyyOBilRgGSqLNF1jnwNQdIvAt48C3IlBmHCiLQHC2zoHDu6zG1iXn6+y62ScxY9AODO6w0pvAqf23oSE4joOfH6OxfMoRnoGUm+de8wykbFt6wZtA07QwtNOqKh3ZbS3Wzz2F+1c/QJY0UCJ/J3kXWJfv7VhxCRRV1jGw7XI+gcO7rEFFRvdYxydwcPsVsC0bQdKScngt4iUTD4Fy/8p7PoHzRu1DclwmgmiqgUXjD3oTKHbAt869qdJ7l98jNTEblPTkXMwetpvnftA0LLHb4X8kiY9Kx6Q+W7wJtG0HR7fdrtYz+x7iya0vkEtUULIzCjC21wY+W/GYXusRH5kGytWTLxgEEhePPwhKYb7EK3BQuxWwTBuUkd3X8goUn6fMHLyTT+DCsQdAEXNzSMeVPAJHdF2DmH8poCREp3uwm7HsGq9J9q69iuunX6EgrwQVObjpBt8z6rdPfvE8kiiyhsvHnomrQx6BxYUyYiNS8f75H1w4/ISepDZLoDhNJ9cdNUquhRsv+6EP9oNH7Iff2A9g8h8CLt1gH0Qf9NMQAFnO60BJFQe0AAAAAElFTkSuQmCC">
</a>
</navbar>
<!-- navbar-image.vue -->
Place form content within <navbar-form>
for proper vertical alignment and collapsed behavior in narrow viewports. Use the alignment props left
/ right
to decide where it resides within the navbar content.
<navbar>
<a class="navbar-brand" slot="brand" href="#">Brand</a>
<navbar-form left>
<div class="form-group">
<input type="text" class="form-control" placeholder="Search">
</div>
<btn>Submit</btn>
</navbar-form>
</navbar>
<!-- navbar-form.vue -->
Add the .navbar-btn
class to <btn>
that not residing in a <navbar-form>
to vertically center them in the navbar.
<navbar>
<a class="navbar-brand" slot="brand" href="#">Brand</a>
<btn class="navbar-btn">Sign in</btn>
</navbar>
<!-- navbar-button.vue -->
Wrap strings of text in <navbar-text>
tag for proper leading and color.
<navbar>
<a class="navbar-brand" slot="brand" href="#">Brand</a>
<navbar-text>Signed in as wxsm</navbar-text>
</navbar>
<!-- navbar-text.vue -->
For folks using standard links that are not within the regular navbar navigation component, use the .navbar-link
class to add the proper colors for the default and inverse navbar options.
<navbar>
<a class="navbar-brand" slot="brand" href="#">Brand</a>
<template slot="collapse">
<navbar-text right>Signed in as <a href="#" class="navbar-link">wxsm</a></navbar-text>
</template>
</navbar>
<!-- navbar-links.vue -->
Add fixed-top
/ fixed-bottom
to make navbar fixed.
<navbar fixed-top>
...
</navbar>
Note that the fixed navbar will overlay your other content, unless you add padding
to the top of the <body>
. Try out your own values or use our snippet below. Tip: By default, the navbar is 50px
high.
body { padding-top: 70px; }
Make sure to include this after the core Bootstrap CSS.
Create a full-width navbar that scrolls away with the page by adding static-top
prop.
Unlike fixed navbars, you do not need to change any padding on the body
.
<navbar static-top>
<a class="navbar-brand" slot="brand" href="#">Brand</a>
</navbar>
<!-- navbar-static-top.vue -->
Modify the look of the navbar by adding inverse
prop.
<navbar inverse>
<a class="navbar-brand" slot="brand" href="#">Brand</a>
<template slot="collapse">
<navbar-nav>
<li class="active"><a role="button">Link <span class="sr-only">(current)</span></a></li>
<li><a role="button">Link</a></li>
</navbar-nav>
</template>
</navbar>
<!-- navbar-inverse.vue -->
Name | Type | Default | Required | Description |
---|---|---|---|---|
v-model | Boolean | Indicate the collapse status of navbar. | ||
fluid | Boolean | true | Use .container-fluid class in navbar container, .container otherwise. | |
fixed-top | Boolean | false | Apply fixed top style. | |
fixed-bottom | Boolean | false | Apply fixed bottom style. | |
static-top | Boolean | false | Apply static top style. | |
inverse | Boolean | false | Apply inverse style. |
Name | Description |
---|---|
default | The navbar body (non-collapsable part). |
collapse | The navbar body (collapsable part). |
brand | The navbar brand. |
collapse-btn | Use this slot to override the default collapse button. |
Name | Type | Default | Required | Description |
---|---|---|---|---|
left | Boolean | false | Pull content to left. | |
right | Boolean | false | Pull content to right. |
Name | Type | Default | Required | Description |
---|---|---|---|---|
left | Boolean | false | Pull content to left. | |
right | Boolean | false | Pull content to right. |
Name | Type | Default | Required | Description |
---|---|---|---|---|
left | Boolean | false | Pull content to left. | |
right | Boolean | false | Pull content to right. |
Caught a mistake or want to contribute to the documentation? Edit this page on Github!
Designed and built by @wxsm
Code under MIT License
Document under CC BY 4.0