ボタングループ
ボタン グループを使用して一連のボタンを 1 行にまとめ、JavaScript でそれらを強力にします。
基本的な例
一連のボタンを.btn
inでラップし.btn-group
ます。オプションの JavaScript ラジオとチェックボックス スタイルの動作をボタン プラグインで追加します。
<div class="btn-group" role="group" aria-label="Basic example">
<button type="button" class="btn btn-secondary">Left</button>
<button type="button" class="btn btn-secondary">Middle</button>
<button type="button" class="btn btn-secondary">Right</button>
</div>
正しいことを確認role
し、ラベルを提供する
一連のボタンがグループ化されていることを支援技術 (スクリーン リーダーなど) で伝えるには、適切なrole
属性を指定する必要があります。ボタン グループの場合、これは になりますがrole="group"
、ツールバーにはrole="toolbar"
.
さらに、グループとツールバーには明示的なラベルを付ける必要があります。これは、適切な役割属性が存在するにもかかわらず、ほとんどの支援技術が通知しないためです。ここに示す例では、 を使用していますaria-label
が、 などの代替aria-labelledby
も使用できます。
ボタンツールバー
ボタン グループのセットを組み合わせて、より複雑なコンポーネントのボタン ツールバーを作成します。必要に応じてユーティリティ クラスを使用して、グループ、ボタンなどの間隔を空けます。
<div class="btn-toolbar" role="toolbar" aria-label="Toolbar with button groups">
<div class="btn-group mr-2" role="group" aria-label="First group">
<button type="button" class="btn btn-secondary">1</button>
<button type="button" class="btn btn-secondary">2</button>
<button type="button" class="btn btn-secondary">3</button>
<button type="button" class="btn btn-secondary">4</button>
</div>
<div class="btn-group mr-2" role="group" aria-label="Second group">
<button type="button" class="btn btn-secondary">5</button>
<button type="button" class="btn btn-secondary">6</button>
<button type="button" class="btn btn-secondary">7</button>
</div>
<div class="btn-group" role="group" aria-label="Third group">
<button type="button" class="btn btn-secondary">8</button>
</div>
</div>
入力グループとツールバーのボタン グループを自由に組み合わせてください。上記の例と同様に、物事を適切に配置するには、いくつかのユーティリティが必要になる可能性があります。
<div class="btn-toolbar mb-3" role="toolbar" aria-label="Toolbar with button groups">
<div class="btn-group mr-2" role="group" aria-label="First group">
<button type="button" class="btn btn-secondary">1</button>
<button type="button" class="btn btn-secondary">2</button>
<button type="button" class="btn btn-secondary">3</button>
<button type="button" class="btn btn-secondary">4</button>
</div>
<div class="input-group">
<div class="input-group-prepend">
<div class="input-group-text" id="btnGroupAddon">@</div>
</div>
<input type="text" class="form-control" placeholder="Input group example" aria-label="Input group example" aria-describedby="btnGroupAddon">
</div>
</div>
<div class="btn-toolbar justify-content-between" role="toolbar" aria-label="Toolbar with button groups">
<div class="btn-group" role="group" aria-label="First group">
<button type="button" class="btn btn-secondary">1</button>
<button type="button" class="btn btn-secondary">2</button>
<button type="button" class="btn btn-secondary">3</button>
<button type="button" class="btn btn-secondary">4</button>
</div>
<div class="input-group">
<div class="input-group-prepend">
<div class="input-group-text" id="btnGroupAddon2">@</div>
</div>
<input type="text" class="form-control" placeholder="Input group example" aria-label="Input group example" aria-describedby="btnGroupAddon2">
</div>
</div>
サイジング
グループ内のすべてのボタンにボタンのサイズ変更クラスを適用する代わりに、複数のグループをネストする場合の各ボタンを含め、各ボタンに追加.btn-group-*
するだけです。.btn-group
<div class="btn-group btn-group-lg" role="group" aria-label="...">...</div>
<div class="btn-group" role="group" aria-label="...">...</div>
<div class="btn-group btn-group-sm" role="group" aria-label="...">...</div>
ネスティング
ドロップダウン メニューと一連のボタンを組み合わせたい場合は、.btn-group
を別のメニュー内に配置します。.btn-group
<div class="btn-group" role="group" aria-label="Button group with nested dropdown">
<button type="button" class="btn btn-secondary">1</button>
<button type="button" class="btn btn-secondary">2</button>
<div class="btn-group" role="group">
<button type="button" class="btn btn-secondary dropdown-toggle" data-toggle="dropdown" aria-expanded="false">
Dropdown
</button>
<div class="dropdown-menu">
<a class="dropdown-item" href="#">Dropdown link</a>
<a class="dropdown-item" href="#">Dropdown link</a>
</div>
</div>
</div>
上下変動
ボタンのセットを水平ではなく垂直に積み重ねて表示します。ここでは分割ボタンのドロップダウンはサポートされていません。
<div class="btn-group-vertical">
...
</div>