Navbar
レスポンシブなヘッダー, ナビバーなどのドキュメントと例を示します。
How it works
navbarを始める前に下記を確認してください。
.navbar
は .navbar-expand{-sm|-md|-lg|-xl}
と color scheme が必要です。
- コンテンツはデフォルトでは幅一杯に表示します。 Use optional containers で横幅の制限が可能です。
- spacing や flex を使用して, ナビゲーションバー内の間隔や配置を制御します。
- デフォルトでレスポンシブになっているが, 変更可能です。レスポンシブの動作はJavaScriptの折り畳みプラグインに依存します。
- 印刷時にはデフォルトで非表示になっています。強制的に印刷させる場合は
.navbar
に .d-print
を追加します。詳しくは display を参照してください。
<nav>
要素を使用してアクセシビリティを確認するか, 一般的な <div>
などの要素を使用してナビゲーションバーに role="navigation"
を追加します。
例とサポートされているサブコンポーネントのリストを参照してください。
Supported content
ナビゲーションバーにはサブコンポーネントが組み込まれています。
下記が使用できるコンポーネントですが, 詳細は例をみてください。
.navbar-brand
for your company, product, or project name.
.navbar-nav
for a full-height and lightweight navigation (including support for dropdowns).
.navbar-toggler
for use with our collapse plugin and other navigation toggling behaviors.
.form-inline
for any form controls and actions.
.navbar-text
for adding vertically centered strings of text.
.collapse.navbar-collapse
for grouping and hiding navbar contents by a parent breakpoint.
This example uses color (bg-light
) and spacing (my-2
, my-lg-0
, mr-sm-0
, my-sm-0
) utility classes.
Brand
.navbar-brand
はほとんどの要素で適用可能です。ユーティリティクラスやカスタムスタイルを必要とする要素がある場合にはアンカーリンクに設定するのが最適です。
.navbar-brand
にイメージを追加するには, カスタムスタイルやユーティリティが必要になります。
下記の例を参考にしてください。
.navbar-brand
にイメージを適用することは, いつも適切なサイズにカスタムスタイルやユーティリティを必要とします。下記に例があります。
Nav
ナビゲーションリンクは, 独自の修飾子クラスを使用して .nav
オプションを構築し, 適切なレスポンシブスタイルのために切替クラスを使用する必要があります。
ナビゲーションバーのコンテンツを安全に配置させるためにナビゲーションはできるだけ多く空白を占有するようになります。
.active
を使用したアクティブ状態は, 現位置のページを .nav-link
や直接の親 .nav-items
に直接適用可能なことを示します。
navのクラスを使用すれば list-based
のアプローチを完全に回避可能です。
ナビゲーションにドロップダウンを使用することも可能です。ドロップダウンのメニューには配置のために囲み要素が必要なので以下に示すように .nav-item
と .nav-link
に別々の入れ子要素を使用します。
さまざまなフォームコントロールとコンポーネントを .form-inline
でナビゲーションバー内に配置します。
.navbar
の直下の子要素はFlexレイアウトを使用し, デフォルトで justify-content:between
を設定します。この動作を調整するには追加の flex utilities を使用します。
Input groups work, too:
ナビゲーションフォームの一部として様々なボタンがサポートされています。異なるサイズの要素の配置が可能です。
Text
.navbar-text
で 文字列の縦方向の配置と横方向の間隔を調整できます。
他のコンポーネントやユーティリティと組み合わせることもできます。
Color schemes
テーマのクラスと background-color
ユーティリティの組み合わせにより, 色の変更が可能です。
明るめの色は .navbar-light
, 暗めの色は .navbar-dark
を選択できます。 .bg-*
ユーティリティでカスタマイズもできます。
Containers
.container
でナビゲーションバーを囲んでページ上に配置したり, fixed or static top navbar でコンテンツを中央にのみ配置することが可能です。
コンテナがnavbar内にある場合, 指定された .navbar-expand{-sm|-md|-lg|-xl}
クラスよりも下のブレークポイントでは水平方向のpaddigが削除されます。
これにより, ナビゲーションバーが折り畳まれているときは, 狭い viewport で不必要にpaddingが倍増することはありません。
Placement
position utilities を使用して動的な位置を取ることができます。
上, 下, 上に達したら固定などを選択できます。 position: fixed
を使用した固定ナビーゲーションでは他の要素との重複を避けるため, CSSでの設定がが必要な場合があります。
.sticky-top
の position: sticky
は すべてのブラウザでサポートされるわけではないことに注意が必要です。
isn’t fully supported in every browser
Responsive behaviors
ナビバーは .navbar-toggler
, .navbar-collapse
, .navbar-expand{-sm|-md|-lg|-xl}
クラスを使用して,コンテンツがボタンの後で折りたたまれたときに変化可能です。特定の要素を表示するか非表示にするかを簡単に選択可能です。
折りたたむことのないナビバーの場合は, .navbar-expand
をナビゲーションバーに適用します。
常に折りたたむナビゲーションバーの場合は, .navbar-expand
を適用しないでください。
Toggler
トグルはデフォルトで左揃えになっていますが .navbar-brand
のような兄弟要素に従うと, 自動的に右端に配置されます。マークアップを元に戻すと, トグルの配置が逆になります。以下に, 異なるスタイルの例を示します。
.navbar-brand
は最も低いブレークポイントには表示されません:
左にブランド名, 右にトグル:
左にトグル, 右にブランド名:
External content
External content
折りたたみプラグインを使用して, 隠しコンテンツにすることもできます。プラグインが動作するために id
と data-target
のマッチングを行えます。
Collapsed content
Toggleable via the navbar brand.