ビフォーアフター スライダー

インタラクション Medium #js #compare #slider

2枚の状態を左右に重ねて、スライダーで境目を動かしながら見比べるビフォーアフター用のパーツです。後ろ側(AFTER)の上に前面(BEFORE)を重ね、 range 入力の値に応じて前面の width を変えることで、ドラッグした位置までBEFOREが見える仕組みになっています。

▶ プレビュー

解説

2枚の状態を左右に重ねて、スライダーで境目を動かしながら見比べるビフォーアフター用のパーツです。後ろ側(AFTER)の上に前面(BEFORE)を重ね、range入力の値に応じて前面のwidthを変えることで、ドラッグした位置までBEFOREが見える仕組みになっています。JavaScriptは数行で、inputイベントで幅を書き換えているだけなので動作も軽快です。

向いている使い方

  • リフォーム・清掃・美容など施工前後を見せたいページ
  • レタッチや加工サービスの効果説明
  • デザイン改善のリニューアル事例の比較

サンプルは色付きのdivで代用していますが、実際は中身をimgに差し替えれば写真比較になります。その際、2枚は同じ寸法に揃え、前面側のimgは親の幅に合わせてmax-widthを解除しないことが境目をきれいに見せるコツです。スライダーは標準のフォーム部品なのでキーボードの矢印キーでも動かせ、操作性とアクセシビリティの両立がしやすい構成です。

使用例・適したシーン

  • 施工事例の比較
  • リフォームのビフォーアフター
  • 美容・施術の症例

よくある質問

色のブロックを実際の写真に置き換えるには。
AFTER と BEFORE の各ブロックの中に img 要素を入れ、2枚の画像を同じ縦横サイズに揃えてください。前面側を親要素いっぱいに広げておくと、スライダーで切り取られる境目がずれずにきれいに見えます。
スマホのタッチ操作でも動きますか。
動きます。標準の range スライダーを使っているため、タッチでつまんで左右に動かせます。キーボードの矢印キーでも位置を変えられるので操作方法を選びません。
追加日:2026-05-16
← すべてのスニペットへ戻る