コピペで簡単!スマートフォンでスクロールスナップ

コピペで簡単!スマートフォンでスクロールスナップ

こんなSWELLユーザーに読んでほしい!

  • 投稿リストやリッチカラムをスマホではコンパクトに表示したい
  • タブブロックに投稿リストを配置している
  • CSSもよくわからないし、難しいカスタマイズはムリ・・・

前回の記事で「無限ループアニメーション」をご紹介したときに、「スマホの場合はスクロールスナップに変化」するようにしました。

今回はこの「スクロールスナップ」をもっと簡単にかつ効果的に使用するカスタマイズをご紹介します。

目次

スクロールスナップとは

スクロールスナップとは、ウェブサイトの閲覧体験を劇的に向上させる魔法のようなCSS機能です。

例えば、長い記事を読んでいるときに、各セクションの始まりで自然とページが止まったり、写真ギャラリーを見ているときに、各画像がきれいに画面の中央に収まったりする、そんな快適なスクロール体験を実現します。

スマートフォンでみたときに、こんな経験はありませんか?

  • デスクトップでは一覧で整列したアイテムが、スマートフォンでは長々とスクロールが続く・・・
  • タブブロックで下にスクロールしてからまた戻ってタブを切り替える・・・

タブブロックに投稿リストを配置したとき

スマートフォンでは、タブの切り替えが面倒・・・

とくに、「タブブロック」に「投稿リスト」や「リッチカラム」でアイテムを並べたときに、この事象が顕著に現れることがあります。

そんなときこそ、スクロールスナップの出番です。

スマートフォンで見たときは、コンテンツを横方向に配置しスクロールスナップを適用することで、スマートフォン上でもスムーズな閲覧体験を提供できます。

フリックで各アイテムが画面にぴったりとフィットし、ユーザーは簡単な操作で次のアイテムに移動できます。これにより、小さな画面でも情報の整理が容易になり、ユーザーの興味を維持しやすくなります。結果として、サイトの滞在時間が延び、コンバージョン率の向上にもつながる可能性があります。

ということで、そんな便利なスクロールスナップを、CSSのコピペで簡単に実装するカスタマイズをご紹介します。

例としては、フムフムハックさんのタブブロックでも実装してます。

カスタマイズ方法

カスタマイズの手順としては、いたって簡単。

  • CSSをコピペ
  • 投稿リスト、またはリッチカラムブロックにクラス名を設定

たったこれだけです。

カスタマイズ手順

STEP
CSSをコピペ
/* =========================================================
//  コピペで簡単!スマホでスクロールスナップ
// ========================================================= */
@media not all and (min-width: 600px) {
  .-snap {
    --item-mobile-width: 80vw; /* スマホでのアイテムの幅 */
    --gap: 1rem; /* 各アイテム同士の間隔 */
  }
  .-snap > * {
    flex-wrap: nowrap !important;
    padding: 0 calc((100vw - var(--item-mobile-width, 80vw)) / 2) !important;
    margin-inline: calc(var(--swl-pad_container, 0px) * -1) !important;
    gap: var(--gap);
    overflow-x: scroll;
    -webkit-scroll-snap-type: x mandatory;
            scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  .-snap > *::-webkit-scrollbar {
    display: none;
  }
  .-snap > * > * {
    padding: 0 !important;
    margin-inline: auto !important;
    flex-shrink: 0;
    width: var(--item-mobile-width, 80vw) !important;
    scroll-snap-align: center;
  }
  /* 「ノーマル」スタイルの調整 */
  .swell-block-tab.is-style-default .c-tabBody:has(.-snap) {
    padding-left: var(--swl-pad_container, 0px);
    padding-right: var(--swl-pad_container, 0px);
  }
}

以下の設定項目は、必要に応じて変更してください。

  • スマホでのアイテムの幅
    –item-mobile-width: 80vw;
  • 各アイテム同士の間隔
    –gap: 1rem;

CSSをコピーし、適切な個所にコピペします。

サイト全体で使用する場合: 「カスタマイザ > 追加CSS」 あるいは「テーマのstyle.css

特定の固定ページで使用する場合: 「カスタムCSS&JS > CSS用コード

STEP
ブロックにクラス名(サブクラス)を設定

投稿リスト、またはリッチカラムを選択し、「高度な設定」で「追加CSSクラス」に-snapを設定します。

CSSクラス
完成

実装例

実際にスマートフォンでご確認ください。

投稿リスト

リッチカラム

タブブロック内のブロック

サポートフォーム

このカスタマイズに関するお問い合わせや、
その他リクエストなど、お気軽にどうぞ。

5
4
3
2
1
個人情報の取り扱いについて

POINT-OF-VIEW.BLOG(以下「当サイト」)では、以下のとおり個人情報保護方針を定め、個人情報の保護を推進致します。

# 個人情報の利用目的

当サイトでは、お問い合わせの際、名前やメールアドレス等の個人情報を入力いただきます。取得した個人情報は、お問い合わせに対する回答や必要な情報を電子メールなどでご連絡する場合に利用させていただくものであり、これらの目的以外では利用いたしません。

# 広告について

当サイトでは、第三者配信の広告サービス(Googleアドセンス、A8.net等のアフィリエイトサービス)を利用しており、ユーザーの興味に応じた商品やサービスの広告を表示するため、クッキー(Cookie)を使用しております。
クッキーを使用することで当サイトはお客様のコンピュータを識別できるようになりますが、お客様個人を特定できるものではありません。

Cookieを無効にする方法やGoogleアドセンスに関する詳細は「広告 ポリシーと規約 Google」をご確認ください。

# アクセス解析ツールについて

当サイトでは、Googleによるアクセス解析ツール「Googleアナリティクス」を利用しています。このGoogleアナリティクスはトラフィックデータの収集のためにクッキー(Cookie)を使用しております。トラフィックデータは匿名で収集されており、個人を特定するものではありません。

くれぐれもカスタマイズは
「自己責任」でお願いします^^;

当ブログでご紹介しているようなカスタマイズ(←本来の意味での)をしなくても、SWELLの基本機能だけで十分オシャレなブログ・サイトが構築できます。

テーマ選びに迷ったらSWELLを選んでおけば間違いないです!
(カスタマイズ沼にハマらないようご注意ください^^;)

\ ご支援ありがとうございます! /

SWELLを使用したブログの構築・カスタマイズのご相談承ります

本業の傍ら、SWELLを使用したブログの構築およびカスタマイズを承っております。
「おしゃれなブログにしたい」
「独自のカスタマイズをしたい」など、
お気軽にご相談ください。
詳しくは、のDMからどうぞ。
まずはで仲良くしてください ^^

WordPressテーマ「SWELL」

17,600円(税込)

シンプル美と機能性の両立。圧倒的な使い心地を追求するWordPressテーマ。
ブロックエディター完全対応!

目次