記事内に商品プロモーションを含む場合があります
本記事では、Bootstrapのカルーセルコンポーネントについて解説していきます。
カルーセルとは、webサイトのトップページでよく見る、メイン画像がスライドして変わる仕掛けのことです。
これをBootstrapで作成していきます。
カルーセルにもいくつか装飾の種類があるので、それについて見ていきましょう。
Bootstrapのカルーセルの種類
Bootstrapの代表的なカルーセルの種類は3つで、以下の通りです。
カルーセルのみ(6秒毎に画像が変わる) コントローラー付きカルーセル コントローラー・インジケーター付きカルーセル
では、それぞれについてどのようにコードを記述していくのかを見ていきます。
Bootstrapのカルーセルの記述方法
カルーセルのみ(6秒毎に画像が変わる)
カルーセルのみ
- <div class=”container”>
- <div class=”carousel slide” data-ride=”carousel”>
- <div class=”carousel-inner“>
- <div class=”carousel-item active“>
- <img src=”https://placehold.jp/1200×540.png” class=”d-block w-100″ alt=””>
- </div>
- <div class=”carousel-item”>
- <img src=”https://placehold.jp/1200×530.png” class=”d-block w-100″ alt=””>
- </div>
- </div>
- </div>
- </div>
注意点としては、active属性を付けるのは、最初に表示したい画像だけということです。
activeを2つ以上の画像につけてしまうと、カルーセルが機能しなくなってしまうので気をつけましょう。
補足として、以下は、Bootstrap4のjsとのひも付けを意味する記述です。
data-ride="carousel"
コントローラー付きカルーセル
コントローラー付きカルーセル
- <div class=”container”>
- <div id=”hoge” class=”carousel slide” data-ride=”carousel”>
- <div class=”carousel-inner”>
- <div class=”carousel-item active”>
- <img src=”https://placehold.jp/1200×540.png” class=”d-block w-100″ alt=””>
- </div>
- <div class=”carousel-item”>
- <img src=”https://placehold.jp/1200×530.png” class=”d-block w-100″ alt=””>
- </div>
- <div class=”carousel-item”>
- <img src=”https://placehold.jp/1200×540.png” class=”d-block w-100″ alt=””>
- </div>
- <div class=”carousel-item”>
- <img src=”https://placehold.jp/1200×530.png” class=”d-block w-100″ alt=””>
- </div>
- </div>
- <a class=”carousel-control-prev” href=”#hoge” data-slide=”prev”>
- <span class=”carousel-control-prev-icon”></span>
- </a>
- <a class=”carousel-control-next” href=”#hoge” data-slide=”next”>
- <span class=”carousel-control-next-icon”></span>
- </a>
- </div>
- </div>
id=”hoge”を追加しましたが、このid名は任意の(自由につけて良い)ものです。
また、ここに来て、<div class=”carousel-inner”>と同階層の位置にある、最後の所に、下記のaタグを追加しました。
<a class="carousel-control-prev" href="#hoge" data-slide="prev"> <span class="carousel-control-prev-icon"></span> </a> <a class="carousel-control-next" href="#hoge" data-slide="next"> <span class="carousel-control-next-icon"></span> </a>
これは、コントローラーを表示する記述です。
コントローラー・インジケーター付きカルーセル
コントローラー・インジケーター付きカルーセル
- <div class=”container”>
- <div id=”hoge” class=”carousel slide” data-ride=”carousel”>
- <ol class=”carousel-indicators”>
- <li data-target=”#hoge” data-slide-to=”0″ class=”active”></li>
- <li data-target=”#hoge” data-slide-to=”1″></li>
- <li data-target=”#hoge” data-slide-to=”2″></li>
- </ol>
- <div class=”carousel-inner”>
- <div class=”carousel-item active”>
- <img src=”https://placehold.jp/1200×540.png” class=”d-block w-100″ alt=””>
- </div>
- <div class=”carousel-item”>
- <img src=”https://placehold.jp/1200×530.png” class=”d-block w-100″ alt=””>
- </div>
- <div class=”carousel-item”>
- <img src=”https://placehold.jp/1200×540.png” class=”d-block w-100″ alt=””>
- </div>
- <div class=”carousel-item”>
- <img src=”https://placehold.jp/1200×530.png” class=”d-block w-100″ alt=””>
- </div>
- </div>
- <a class=”carousel-control-prev” href=”#hoge” data-slide=”prev”>
- <span class=”carousel-control-prev-icon”></span>
- </a>
- <a class=”carousel-control-next” href=”#hoge” data-slide=”next”>
- <span class=”carousel-control-next-icon”></span>
- </a>
- </div>
- </div>
画像の下にインジケーターが表示されました。
また、インジケーターをクリックすると画像が切り替わる仕様にもなっています(仕様としては通常)
少し解説を入れると、以下のコードを<div class=”carousel-inner”>と同階層の位置にある、始まりの所に、下記のol・liタグを追加しました。
<ol class="carousel-indicators"> <li data-target="#hoge" data-slide-to="0" class="active"></li> <li data-target="#hoge" data-slide-to="1"></li> <li data-target="#hoge" data-slide-to="2"></li> </ol>
前回、コントローラーを追加したときは、同階層の、最後の位置にある所でしたが、今回のインジケーターは始まりの所です。
また、今回もidに#hogeを指定していますが、こちらも任意のもので結構です。
最後にここでも、class=”active”が入っていますが、記述するのはliタグの一つにするということに注意してください。
まとめ
Bootstrapのカルーセルコンポーネントについて解説しました。
代表的なものには以下の3つがありましたね。
カルーセルのみ(6秒毎に画像が変わる) コントローラー付きカルーセル コントローラー・インジケーター付きカルーセル
「カルーセルのみ」のカルーセルは、あまり見かけず、ユーザー目線で見るならコントローラー、もしくはインジケーターも付いたものが一般的だと思います。
なお、他にもカルーセルの種類がありますので、さらに詳細に知りたいという方は、Bootstrapのカルーセルコンポーネントの公式ドキュメントをご覧ください。
では、今回は解説は以上です。