カルーセル / スライダー(Carousel / Slider)

Swiper・Embla Carousel・Keen Sliderなどのカルーセル実装比較。自動再生・複数アイテム表示・フェードなど実践的なパターンをインタラクティブに確認できます。

💡 このページでは、Ant Design・Mantine・shadcn/ui(UIコンポーネントライブラリ)と Swiper・Embla Carousel・Keen Slider(カルーセル専用ライブラリ)の実装を比較できます。

ライブラリ比較

項目Ant DesignMantineshadcn/uiSwiperEmblaKeen Slider
自動再生✅ autoplay prop✅ Embla Autoplay✅ Embla Autoplay✅ Autoplay モジュール✅ Autoplay プラグイン⚠️ 自作プラグイン
フェード切り替え✅ effect="fade"❌ 非対応❌ 非対応✅ effect="fade"❌ 非対応❌ 非対応
複数アイテム表示✅ slidesToShow✅ slideSize✅ basis-1/3✅ slidesPerView✅ flex-[0_0_32%]✅ slides.perView
レスポンシブ⚠️ 手動実装⚠️ 手動実装✅ CSS(Tailwind)✅ breakpoints prop⚠️ 手動実装✅ breakpoints prop
外部依存antd のみ@mantine/carousel + Emblaembla-carousel-reactswiper のみembla-carousel-reactkeen-slider のみ
スタイル自由度⚠️ antd スタイルに依存⚠️ Mantine デザインシステム✅ Tailwind 完全対応✅ CSS 上書き可✅ 完全自由✅ 完全自由
バンドルサイズ⚠️ antd 全体に依存⚠️ @mantine/carousel のみ小✅ 小(Emblaと同等)✅ 使ったモジュールのみ✅ 超軽量✅ 軽量

選択のポイント

  • Ant Design — antd を既に使っているプロジェクトなら追加依存なしで使える。autoplay・effect・slidesToShow など 必要な機能が Props で揃っており、外部プラグイン不要で即実装できるのが強み。
  • Mantine Carousel — @mantine/carousel は Embla Carousel の高品質なラッパー。withIndicators・withControls・slideSize など Mantine らしい宣言的 API で書けるのが魅力。Mantine を採用しているプロジェクトで特に相性が良い。
  • shadcn/ui Carousel — Embla Carousel ベースで、CarouselItem の basis-1/3 のように Tailwind の CSS を直接使って レイアウトを制御できる。デザインシステムを Tailwind で統一しているプロジェクトに最適。
  • Swiper — 週700万DLの圧倒的シェアを誇る最も機能豊富なライブラリ。フェード・キューブ・カードなど 豊富なエフェクト、breakpoints によるレスポンシブ設定、縦スクロールなど高度な要件に対応。 ドキュメントが充実しており、ECサイトや LP に特に向いている。 v14 でランタイム依存ゼロ(ssr-window 削除)となりバンドルがさらに縮小。 対応ブラウザ基準は Chrome/Edge 110+・Safari 16.4+・Firefox 110+。
  • Embla Carousel — 依存ゼロ・超軽量のヘッドレスカルーセル。スタイルを完全に自前で制御できるため、 デザインシステムへの完全準拠が必要な場面に向いている。 Mantine・shadcn/ui の内部エンジンでもあるため信頼性が高い。
  • Keen Slider — React Hooks ベースで簡潔に書けるカルーセル。slides: { perView, spacing } の直感的な API と タッチ操作対応が特徴。オートプレイはプラグインを自作する必要があるが、 シンプルなスライダー・ギャラリーには手軽に使える。

カルーセル(スライダー)は、複数のコンテンツを横方向にスライドして切り替えるUI。商品画像・ヒーローバナー・お客様の声・ニュース記事のハイライトなど、限られたスペースに複数のコンテンツを収めたい場面で使われる。

ECサイトの商品画像ギャラリー・LP のヒーローバナー・ポートフォリオのビジュアル・証言・口コミの一覧表示・ニュースや記事のハイライト。

主なバリエーション
  • 単一スライド型(1枚ずつ表示)
  • 複数アイテム表示型(3〜5枚同時表示)
  • 自動再生型(オートプレイ)
  • フェード切り替え型
  • サムネイル連動型
  • 無限ループ型