Splideスライダーの矢印をカスタマイズする

splide arrow customize


Splide.jsで作成したスライダーの矢印の色、サイズ、位置、画像などを変更したい時があると思います。
そんなときの矢印のカスタマイズ方法をそれぞれ解説していきます。




通常のSplide.jsでのスライダーの作成はご存じの前提で進めさせていただきますので、Splide.jsを初めて使う方はこちらから先に参照いただければと思います。
Splide.jsでシンプルなスライダーを作成する






通常のSplideスライダーを作成する

わかりやすいように、最初に通常のSplideスライダーを作成して、そこから変更を加えていきます。

<link href="https://cdn.jsdelivr.net/npm/@splidejs/splide@4/dist/css/splide.min.css" rel="stylesheet">
<script src="https://cdn.jsdelivr.net/npm/@splidejs/splide@4/dist/js/splide.min.js"></script>

<style>
    .sample-slider {
        width: 70%;
        margin: 0 auto;
    }
    .sample-slider img {
        width: 100%;
    }
</style>

<div class="splide sample-slider">
    <div class="splide__track">
          <ul class="splide__list">
              <li class="splide__slide"><img src="./img/sample1.png"></li>
              <li class="splide__slide"><img src="./img/sample2.png"></li>
              <li class="splide__slide"><img src="./img/sample3.png"></li>
          </ul>
    </div>
</div>

<script>
    new Splide('.sample-slider', {
        type : 'loop',
    }).mount()
</script>


通常のSplideスライダーができました。

  • slide image
  • slide image
  • slide image







矢印の色を変更

まずは矢印の色を変更してみましょう。
Splide.jsでは矢印に枠がついてますが、splide__arrowクラスで枠の色を、svgタグで矢印の色を変更する事ができます。

/* 枠の色を変更する */
.sample-slider .splide__arrow {
    background: yellow;
}
/* 矢印の色を変更する */
.sample-slider .splide__arrow svg {
    fill: blue;
}


矢印の色が変更されました。

  • slide image
  • slide image
  • slide image







矢印のサイズを変更

次は矢印のサイズを変更してみましょう。
splide__arrowクラスで枠のサイズを、svgタグで矢印のサイズを変更する事ができます。

/* 枠のサイズを変更する */
.sample-slider .splide__arrow {
    width: 50px;
    height: 50px;
}
/* 矢印のサイズを変更する */
.sample-slider .splide__arrow svg {
    width: 70%;
    height: 70%;
}


矢印のサイズが変更されました。

  • slide image
  • slide image
  • slide image







矢印の位置を変更

次は矢印の位置を変更する方法です。
変更方法は『どこに配置したいか』で変わってくるので、配置場所別に説明します。


左右に動かしたい場合

矢印を左右に動かしたい場合は、splide__arrow–prevクラスとsplide__arrow–nextクラスで指定できます。
デフォルトは1emになっているので、数値を大きくすると矢印が内側に動きます。

.sample-slider .splide__arrow--prev {
    left: 3em;
}
.sample-slider .splide__arrow--next {
    right: 3em;
}
  • slide image
  • slide image
  • slide image




外側に動かしたい場合は数値を小さくします。

.sample-slider .splide__arrow--prev {
    left: -3em;
}
.sample-slider .splide__arrow--next {
    right: -3em;
}
  • slide image
  • slide image
  • slide image




上下に動かしたい場合

矢印を上下に動かしたい場合はsplide__arrowクラスで指定できます。
transformプロパティを初期化してtopプロパティで上からの位置を決めることができます。

.sample-slider .splide__arrow {
    top: 10px;
    transform: initial;
}
  • slide image
  • slide image
  • slide image





bottomプロパティで下からの位置を決めることができます。

.sample-slider .splide__arrow {
    top: initial;
    transform: initial;
    bottom: 10px;
}
  • slide image
  • slide image
  • slide image







矢印を画像で置き換える

矢印を任意の画像に変更したい時もあると思います。
そんな時は、以下のようにCSSのみで矢印を画像で置き換える事ができます。

.sample-slider .splide__arrow {
    background: none;
    background-size: cover;
    background-repeat: no-repeat;
}
.sample-slider .splide__arrow--prev {
    background-image: url(./img/arrow_left.png);
}
.sample-slider .splide__arrow--next {
    background-image: url(./img/arrow_right.png);
}
.sample-slider .splide__arrow svg {
    display: none;
}
  • slide image
  • slide image
  • slide image





矢印を画像で置き換えたい場合、他にもHTMLで指定したりSVGのパスを使用したりする方法があるので、より詳しく知りたい方は下記をご参照ください。
Splideスライダーの矢印を画像で置き換える







矢印を消す(非表示にする)

矢印が必要ない場合はオプションにarrows: falseを追加すれば非表示にすることができます。

new Splide('.sample-slider', {
    arrows: false,
}).mount()







以上、Splideスライダーの矢印をカスタマイズする方法でした!

スポンサーリンク

You can subscribe by SNS

スポンサーリンク

コメントを残す

*