ボタン(component)の命名規則とコーディングルール

ボタン(component)のカスタマイズに関する規則

ボタン(component)のカスタマイズをする際に遵守すべき命名規則とコーディングルールについてまとめています。

1. ボタン(component)の命名規則

ボタンに独自クラスを付与する場合、「btn_custom●●」と命名してください。●●部分は数字で、01から始まる連番となります。
旧CMSにおいては、見出しには上記クラスの付与が必須です。
なお、「btn_custom●●」へのオプションクラスとして使うクラスには特に決まりはありません。
下記表内の各ボタンについては、本ページ内の説明をご確認ください。
  命名規則
ボタン
(新旧CMS共通)
※旧CMSでは必須クラス
btn_custom01
btn_custom02 …
ボタン
(新CMSデザインパーツ流用時)
btn1_custom01
btn1_custom02 …
TELボタン
(新旧CMS共通)
※旧CMSでは必須クラス
btn_custom_tel
ボックスリンク btn_custom_boxlink
注意事項

新CMSにおいては独自クラスなしで調整を行えるケースもあります。
詳細は本ページ内の「3. 新CMSでのカスタマイズについて」をご確認ください。

2. 新CMSではどのような場合にCSSで調整を行う?

新CMSでは、ボタンは基本的にベースデザイン設定フォントサイズボタンカラーを設定していくことが前提となります。
しかし、以下に書かれている箇所はベースデザイン設定で変更を加えることができませんので、CSSで調整していくことになります。

CSSで対応する調整
  • デフォルトで設定されているボタン上の余白(margin-top)
  • ボタン内の余白(paddingで大きさの調整が必要な場合)
  • 指定されたアイコンがベースデザイン設定で選択できないものの場合
  • 背景色がボタン1 〜 3のいずれにも該当せず、異ったスタイルが必要となる場合
  • デフォルトで施されているbox-shadowを調整(または削除)する場合

3. 新CMSでのカスタマイズについて

3.1 - 独自クラスなしで調整を行えるケース
(デザインパーツ自体を調整)

以下の条件に該当する場合はクラスを付与せずCSSでデザインパーツに直接調整を行います。
デザインパーツのボタンはページデザイン設定で作成されたボタン1 〜 3が該当します。
  • デフォルトで設定されているボタン上の余白(margin-top)を調整する場合
  • ボタン内のpaddingを調整する場合
  • デフォルトで施されているbox-shadowを外す場合
  • デフォルトで施されているbox-shadowの数値を変更する場合

(以下はその調整を行っている書き方の一例です)

.component:not(:root):not(:root):not(:root):not(:root):not(:root) {
  //ボタン全体
  &.button[data-designpart-id] {
    .button-cont {
      a {
        &:is(.size-s,.size-m,.size-l) {
          box-shadow: none;
          margin-top: 0;
        }
      }
    }
  }
}

注意事項
上記の条件を超える変更が必要な場合は、デザインパーツに対して直接調整を行わないでください。
必ず独自クラスを付与し、その中にスタイルを記述する形とします。

3.2 - ボタンをカスタムするケース
(デザインパーツのデザインを流用)

デザインパーツを使用するボタンのカスタムはベースデザイン設定で作成したボタンのスタイルを流用する形で行います。
デザインパーツに対してクラスを付与し、「カスタム用 デザインパーツ記述場所」以下にスタイルを追記していきます。

.component:not(:root):not(:root):not(:root):not(:root):not(:root) {
  //ボタン3
  &.button {
    &.btn3_custom01 {
      .button-cont {
        a {
          &:is(.size-s,.size-m,.size-l) {
          〜〜〜
          }
        }
      }
    }
  }
 }

命名規則
この場合、クラス名はどのボタンを流用しているかがわかるよう、「btn」の後に使用しているボタンの番号を入れます。
  • 「btn1_custom01」「 … 02」〜:ボタン1にスタイルを当てる場合
  • 「btn2_custom01」「 … 02」〜:ボタン2にスタイルを当てる場合
  • 「btn3_custom01」「 … 02」〜:ボタン3にスタイルを当てる場合
ベースデザイン設定で作成したボタンを流用するケース
ボタンの大きさやフォントサイズが同じで、一部(例:アイコンのみ変えたい場合 など)に変更を加えたい場合、ベースデザイン設定で作成したボタンのスタイルを流用することができます。
また、現状あるボタンの色違いを作成したい場合や、同じ形状で4種類目以降のボタンを作成したい場合もボタン1 - 3をベースにしているため、このケースに当てはまります。

3.3 - 新しくボタンを作成するケース(デフォルトパーツを使用)

ボタンの形状(大きさやフォントサイズ)が何もかも異なっており、上記の方法で対応出来ない場合は、
CSSを流用せずにデフォルトパーツに最初からスタイルを記述し、ボタンを作成することができます。

(例)テキストに下線が装飾されたシンプルなボタンを作成する必要がある場合、形状が異なるのでデフォルトパーツを使用し、最初から作成します。

3.4 - 記述場所に関するルール(デザイン・デフォルトパーツ)

新CMSでは、ボタンに対してスタイルを記述する場合は、基本的に"サイズ"内に書いてください。
ただし、色に関することのみ"カラー"にスタイルを当てるようにしてください。
編集画面の崩れが発生する可能性があるため、aタグ直下にはスタイルを記述しないでください。

&.button {
      &.btn1_custom01 {
        .button-cont {
          a {
            &:is(.size-s,.size-m,.size-l) {
              //基本的にここに記述を行う↓
              &::before {}
            }
            &:is(.blue,.red,.orange,.black,.white) {
              //色に関する記述のみにここに行う↓
            }
            &:hover {}
          }
        }
      }
    }

注意事項
予期せぬ崩れや、編集画面での操作時に影響が出る可能性があるため、aタグの中に直接や、カラーの中に色以外のスタイルを記述することは禁止されています。

4. 旧CMSでのカスタマイズについて

通常のボタンの記述

「button(ボタン)」>「カスタムボタンサンプル集」に記述を行います。
「サイズボタン設定」の中でサイズS/M/Lそれぞれについてmin-widthやpadding、font-sizeなどの指定を記述し、大きさを規定します。
その他の各ボタンのデザインに関する記述は、その下の「カスタムボタン設定」の中で各ボタンに対して行います(例:1つ目のボタンであれば「ボタンバリエ01」の中)
旧CMSでは、色の中にスタイルの記述を行います。(以下はその一例です)
編集画面の崩れが発生する可能性があるため、aタグ直下にはスタイルを記述しないでください。

/*--- カスタムボタンサンプル集 ---*/

.component {
  &.button {
    &:where(
      .btn_custom01,
      .btn_custom02,
      .btn_custom03
    ) {
      //サイズボタン設定
      .button-cont {
        a {
          〜 中略 〜
          //サイズ小のとき
          &.size-s {
          //ここにサイズSの時の記述
          }
          //サイズ中のとき
          &.size-m {
          //ここにサイズMの時の記述
          }
          //サイズ大のとき
          &.size-l {
          //ここにサイズLの時の記述
          }
          &:hover {
            opacity: 1;
          }
        }
      }
          〜 中略 〜
    }
    /*-- カスタムボタン設定 --*/
    //ボタンバリエ01
    &.btn_custom01 {
      .button-cont {
        a {
          &:is(.blue,.red,.orange,.black,.white) {
            //ここにサイズ以外のデザインに関する記述
               … 以下省略

注意事項
予期せぬ崩れや、編集画面での操作時に影響が出る可能性があるため、aタグの中に直接スタイルを記述することは禁止されています。

TELボタンの記述

「button(ボタン)」>「TELボタン」内にフォントサイズを設定します。

//TELボタン
    &.button[data-designpart-id="642f669ce4dc09621d945abc"] {
      .button-cont {
        a {
          //サイズ小
          &.size-s {
            font-size: calc(4px + var(--fo-button-small-font-size));
          }
          //サイズ中
          &.size-m {
            font-size: calc(4px + var(--fo-button-medium-font-size));
          }
          //サイズ大
          &.size-l {
            font-size: calc(10px + var(--fo-button-large-font-size));
          }
        }
      }
    }

5. ボックスリンクについて(新・旧共通)

新・旧どちらのコピー元サイトにも、「ボックスリンク」と呼んでいる特殊なボタンが準備されています。
これはカラム(col)とセットで使い、ボタンの領域をカラム(col)全体に広げ、1つのリンクとして表現するためのものです。

通常のカラム(col)と同じパーツが配置できますので、見出しや画像など、見せたいパーツを追加可能です。
使用時には、設定したいカラム(col)とボタンに下記のクラスを追加します。
  • カラム(col)へ「box_link_col」を付与
  • ボタンへ「btn_custom_boxlink」を付与
注意事項
「box_link_col」や「btn_custom_boxlink」は、ボックスリンクを実現するために作られている専用のクラスです。
こちらのクラスにボックスリンク以外のスタイルを当てないでください。
デザインの調整が必要な場合は、別の独自クラスを付与し、その中にCSSを記述するようにしてください。
pagetop