簡単にスライダー構築
レスポンシブ対応のjQueryスライダー系ライブラリ × 11選 スマートフォンの登場で、カルーセル機能が必須になってきましたが、そうしらスライダーライブラリを評価してくれているブログサイトなどもあり、手軽に構築できる状況ですが、 どのライブラリもクセがあり、多少の難もあるようです。 僕も、個人的に使うカルーセルライブラリは、以前に作ってgithubにもアップしています。 [Tools] 高速カルーセル・ライブラリをバージョンアップしました どうやら、css3には強力な機能が備わっていて、もっと簡単に構築できるようなので、今回はその機能を使ってネイティブコードで簡単にスライダーを構築してみます。scroll-snap-typeについて
その機能が「scroll-snap-type」です。 この機能は、スクロールが発生するエリアで、そのエリアサイズにピタっと合わせてくれる機能で、カルーセル機能そのまんまというぐらい、ドンピシャの機能になります。 ちなみに、スマホ表示した画面は、ページ全体が縦スクロールすると思いますが、センテンス毎に縦スクロールもピタッと画面に合わせてセンテンストップを持ってくることもできるようです。 これは覚えておくとかなりUIに役立つ機能になりそうですね。ソース
<div class="slider">
<div class="content-1"></div>
<div class="content-2"></div>
<div class="content-3"></div>
</div>
.content-1{background-color:red;}
.content-2{background-color:blue;}
.content-3{background-color:green;}
.slider{
width:300px;
}
.slider > *{
display:inline-block;
width:100%;
height:200px;
}
/* Snap */
.slider{
white-space:nowrap;
overflow:auto;
scroll-snap-type: x mandatory;
}
.slider > *{
scroll-snap-align: start;
}
/* Scrollbar-hidden */
.slider{
-ms-overflow-style: none;
scrollbar-width: none;
}
.slider::-webkit-scrollbar{
display:none;
}
See the Pen own-slider by YugetaKoji (@geta1972) on CodePen.
簡単な構図ですが、非常にシンプルにカルーセル処理ができていることがわかります。
0 件のコメント:
コメントを投稿