例
<div>
<b-navbar toggleable="lg" type="dark" variant="info">
<b-navbar-brand href="#">NavBar</b-navbar-brand>
<b-navbar-toggle target="nav-collapse"></b-navbar-toggle>
<b-collapse id="nav-collapse" is-nav>
<b-navbar-nav>
<b-nav-item href="#">Link</b-nav-item>
<b-nav-item href="#" disabled>Disabled</b-nav-item>
</b-navbar-nav>
<b-navbar-nav class="ml-auto">
<b-nav-form>
<b-form-input size="sm" class="mr-sm-2" placeholder="Search"></b-form-input>
<b-button size="sm" class="my-2 my-sm-0" type="submit">Search</b-button>
</b-nav-form>
<b-nav-item-dropdown text="Lang" right>
<b-dropdown-item href="#">EN</b-dropdown-item>
<b-dropdown-item href="#">ES</b-dropdown-item>
<b-dropdown-item href="#">RU</b-dropdown-item>
<b-dropdown-item href="#">FA</b-dropdown-item>
</b-nav-item-dropdown>
<b-nav-item-dropdown right>
<template #button-content>
<em>User</em>
</template>
<b-dropdown-item href="#">Profile</b-dropdown-item>
<b-dropdown-item href="#">Sign Out</b-dropdown-item>
</b-nav-item-dropdown>
</b-navbar-nav>
</b-collapse>
</b-navbar>
</div>
カラースキーム
<b-navbar>
は、標準の Bootstrap v4 で利用可能な背景色のバリエーションをサポートしています。背景色を変更するには、variant
プロパティを次のいずれかの値に設定します。: primary
、success
、info
、warning
、danger
、dark
、または light
。
テキストの色を制御するには、明るい背景色のバリエーションを使用する場合は type
プロパティを light
に設定し、暗い背景色のバリエーションを使用する場合は dark
に設定します。
配置
次の2つのプロパティのいずれかを設定して、navbarの配置を制御します
プロパティ | タイプ | デフォルト | 説明 |
fixed | 文字列 | null | ビューポートの上部に固定する場合は top に、ビューポートの下 部に固定する場合は bottom に設定します。 |
sticky | ブール値 | false | スクロール時にnavbarをビューポートの上部(または position: relative が設定されている親コンテナ)に固定する場合は、true に設定します。 |
注記
- 固定位置は、CSS
position: fixed
を使用します。ドキュメントの上/下パディングまたはマージンを調整する必要がある場合があります。 - CSS
position: sticky
(sticky
に使用)は、すべてのブラウザで完全にサポートされているわけではありません。position: sticky
をサポートしていないブラウザの場合、ネイティブに position: relative
にフォールバックします。
サポートされるコンテンツ
navbarには、いくつかのサブコンポーネントの組み込みサポートが付属しています。必要に応じて、以下から選択してください
- 会社、製品、またはプロジェクト名の場合は、
<b-navbar-brand>
。 <b-collapse is-nav>
コンポーネントで使用する場合は、<b-navbar-toggle>
。 - 親ブレークポイントでnavbarのコンテンツをグループ化および非表示にする場合は、
<b-collapse is-nav>
。 - フルハイトで軽量なナビゲーション(ドロップダウンのサポートを含む)には、
<b-navbar-nav>
。<b-navbar-nav>
内では、次のサブコンポーネントがサポートされています。 - リンク(およびrouter-link)アクションアイテムの場合は、
<b-nav-item>
。 - ナビゲーションドロップダウンメニューの場合は、
<b-nav-item-dropdown>
。 - 垂直方向に中央揃えされたテキストの文字列を追加する場合は、
<b-nav-text>
。 - フォームコントロールとアクションの場合は、
<b-nav-form>
。
<b-navbar-brand>
<b-navbar-brand>
は、href
が指定されている場合はリンクを生成し、to
が指定されている場合は <router-link>
を生成します。どちらも指定されていない場合は、<div>
タグとしてレンダリングされます。レンダリングする要素に tag
プロパティを設定することで、タグタイプをオーバーライドできます。
<div>
<b-navbar variant="faded" type="light">
<b-navbar-brand href="#">BootstrapVue</b-navbar-brand>
</b-navbar>
</div>
<div>
<b-navbar variant="faded" type="light">
<b-navbar-brand tag="h1" class="mb-0">BootstrapVue</b-navbar-brand>
</b-navbar>
</div>
<b-navbar-brand>
に画像を追加するには、適切なサイズにするためにカスタムスタイルまたはユーティリティが常に必要になる可能性があります。いくつかの例を次に示します。
<div>
<b-navbar variant="faded" type="light">
<b-navbar-brand href="#">
<img src="https://placekitten.com/g/30/30" alt="Kitten">
</b-navbar-brand>
</b-navbar>
</div>
<div>
<b-navbar variant="faded" type="light">
<b-navbar-brand href="#">
<img src="https://placekitten.com/g/30/30" class="d-inline-block align-top" alt="Kitten">
BootstrapVue
</b-navbar-brand>
</b-navbar>
</div>
<b-navbar-nav>
navbarナビゲーションリンクは、<b-navbar-nav>
親コンポーネントに基づいて構築されており、適切なレスポンシブスタイリングには <b-collapse is-nav>
および <b-nav-toggle>
トグラーの使用が必要です。navbar内のナビゲーションは、navbarのコンテンツを安全に整列させるために、可能な限り水平方向に拡大します。
<b-navbar-nav>
は、次の子コンポーネントをサポートしています
- リンク(およびrouter-link)アクションアイテムの場合は、
<b-nav-item>
。 - 垂直方向に中央揃えされたテキストの文字列を追加する場合は、
<b-nav-text>
。 - navbarドロップダウンメニューの場合は、
<b-nav-item-dropdown>
。 - navbarにシンプルなフォームを追加する場合は、
<b-nav-form>
。
<b-nav-item>
<b-nav-item>
は、プライマリリンク(および <router-link>
)コンポーネントです。to
プロパティ値を提供すると、<router-link>
が生成され、href
プロパティ値を提供すると、標準リンクが生成されます。
<b-nav-item>
の active
プロパティを設定すると、項目がアクティブなページとして強調表示されます。<b-nav-item>
を無効にするには、プロパティ disabled
を true に設定します。
<b-nav-item>
の @click
イベントのハンドラーを指定することで、クリックイベントを処理します。
<b-nav-text>
navbarには、<b-nav-text>
の助けを借りてテキストを含めることができます。このコンポーネントは、テキスト文字列の垂直方向の配置と水平方向の間隔を調整します。
<div>
<b-navbar toggleable="sm" type="light" variant="light">
<b-navbar-toggle target="nav-text-collapse"></b-navbar-toggle>
<b-navbar-brand>BootstrapVue</b-navbar-brand>
<b-collapse id="nav-text-collapse" is-nav>
<b-navbar-nav>
<b-nav-text>Navbar text</b-nav-text>
</b-navbar-nav>
</b-collapse>
</b-navbar>
</div>
<b-nav-item-dropdown>
<b-nav-item-dropdown>
の使用法については、<b-dropdown>
ドキュメントを参照してください。分割ドロップダウンは、<b-navbar>
および <b-navbar-nav>
ではサポートされていないことに注意してください。
<div>
<b-navbar type="dark" variant="dark">
<b-navbar-nav>
<b-nav-item href="#">Home</b-nav-item>
<b-nav-item-dropdown text="Lang" right>
<b-dropdown-item href="#">EN</b-dropdown-item>
<b-dropdown-item href="#">ES</b-dropdown-item>
<b-dropdown-item href="#">RU</b-dropdown-item>
<b-dropdown-item href="#">FA</b-dropdown-item>
</b-nav-item-dropdown>
<b-nav-item-dropdown text="User" right>
<b-dropdown-item href="#">Account</b-dropdown-item>
<b-dropdown-item href="#">Settings</b-dropdown-item>
</b-nav-item-dropdown>
</b-navbar-nav>
</b-navbar>
</div>
navbarにインラインフォームコントロールを配置するには、<b-nav-form>
を使用します
<div>
<b-navbar type="light" variant="light">
<b-nav-form>
<b-form-input class="mr-sm-2" placeholder="Search"></b-form-input>
<b-button variant="outline-success" class="my-2 my-sm-0" type="submit">Search</b-button>
</b-nav-form>
</b-navbar>
</div>
インプットグループも同様に機能します
<div>
<b-navbar type="light" variant="light">
<b-nav-form>
<b-input-group prepend="@">
<b-form-input placeholder="Username"></b-form-input>
</b-input-group>
</b-nav-form>
</b-navbar>
</div>
<b-navbar-toggle>
と <b-collapse is-nav>
navbarはデフォルトではレスポンシブではありませんが、簡単に変更してレスポンシブにすることができます。レスポンシブな動作は、<b-collapse>
コンポーネントに依存します。
<b-navbar-nav>
コンポーネントを <b-collapse is-nav>
でラップし(必ず is-nav
プロパティを設定してください!)、特定のブレークポイントに基づいて折りたたむコンテンツを指定します。<b-collapse>
にドキュメント固有の id
値を割り当てます。
<b-navbar-toggle>
コンポーネントを使用して折りたたみコンポーネントを制御し、<b-navbar-toggle>
の target
プロパティを <b-collapse>
の id
に設定します。
<b-navbar>
の toggleable
プロパティを、コンテンツを自動的に展開する目的のブレークポイントに設定します。可能な toggleable
の値は、sm
、md
、lg
、および xl
です。toggleable
を true
(または空の文字列)に設定すると、navbarは常に折りたたまれ、false
(デフォルト)に設定すると、折りたたみが無効になります(常に展開されます)。
<b-navbar-toggle>
コンポーネントはデフォルトで左揃えですが、<b-navbar-brand>
のような兄弟要素に従う場合、自動的に右端に揃えられます。マークアップを逆にすると、トグラーの配置が逆になります。
参考として、このページの最初の例を参照してください。また、collapse コンポーネントの詳細については、<b-collapse>
を参照してください。
<b-navbar-toggle>
は、collapse を制御するために使用されるだけでなく、<b-sidebar>
コンポーネントの表示/非表示を切り替えるためにも使用できます。target
プロパティで <b-sidebar>
の ID を指定するだけです。
内部的には、<b-navbar-toggle>
は v-b-toggle
ディレクティブを使用します。
カスタムナビバーのトグル
<b-navbar-toggle>
は、デフォルトの Bootstrap v4 の *ハンバーガー*(背景 SVG 画像)をレンダリングします。必要に応じて、スコープ付きの default
スロットを介して、独自のコンテンツ(アイコンなど)を提供できます。default スロットのスコープには expanded
プロパティが含まれており、collapse が展開されている場合は true
、collapse が折りたたまれている場合は false
になります。
expanded
スコーププロパティは、target
プロパティを string
として指定する場合にのみ機能し、array
として指定する場合は機能しないことに注意してください。
<template>
<b-navbar toggleable type="dark" variant="dark">
<b-navbar-brand href="#">NavBar</b-navbar-brand>
<b-navbar-toggle target="navbar-toggle-collapse">
<template #default="{ expanded }">
<b-icon v-if="expanded" icon="chevron-bar-up"></b-icon>
<b-icon v-else icon="chevron-bar-down"></b-icon>
</template>
</b-navbar-toggle>
<b-collapse id="navbar-toggle-collapse" is-nav>
<b-navbar-nav class="ml-auto">
<b-nav-item href="#">Link 1</b-nav-item>
<b-nav-item href="#">Link 2</b-nav-item>
<b-nav-item href="#" disabled>Disabled</b-nav-item>
</b-navbar-nav>
</b-collapse>
</b-navbar>
</template>
印刷
ナビバーは、印刷時にはデフォルトで非表示になります。print
プロパティを設定すると、印刷を強制できます。
関連情報
router-link 固有のプロパティについては、ルーターサポートのリファレンスページを参照してください。