CSSボタン ジェネレーター
パディング、フォント、色、枠線、角丸、影、トランジションを設定してCSSボタンを作ります。:hover、:active、:focus-visibleのCSSとHTML、コントラスト判定も出します。
良いボタンには背景色だけでなく、ホバー状態、押下状態、見やすいキーボードフォーカスリング、読みやすい文字、なめらかなトランジションが必要です。このジェネレーターは、パディング、フォント、色、枠線、角丸、影の設定からそれらをすべて出力し、色相が変わらないようOKLCHで背景を暗くしてホバー色と押下色を計算します。WCAGに照らして文字のコントラストを判定し、通常・ホバー・アクティブ・フォーカスの状態をお使いのブラウザで並べて表示します。
使い方
- ボタンのテキストを入力し、パディング、フォントサイズ、太さを設定します。
- 背景色、テキスト色、枠線の色と角丸を選びます。
- ホバー色は自動のままにするか自分で選び、フォーカスリングとトランジションを設定します。
- CSSとHTMLをコピーする前に、コントラストの行を確認します。
計算式
ホバー = OKLCH(L − 0.08, C, H) · アクティブ = OKLCH(L − 0.12, C, H) · コントラスト比 = (L₁ + 0.05) ÷ (L₂ + 0.05)
OKLCHの明度は0から1なので、0.08は8ポイントです。暗くした色がsRGBの範囲外になる場合は、CSS Color 4の色域マッピングの方法で彩度を下げます。コントラスト比はWCAGの相対輝度で計算し、四捨五入ではなく切り捨てます。
計算例
初期設定の青 #2563EB のOKLCH明度は0.546です。8ポイント暗くするとホバー色は #0B48CF、12ポイント暗くすると押下色は #003BC1 になります。#2563EB 上の白いテキストのコントラスト比は 5.16:1 で、通常のテキストのWCAG AA(4.5:1)には適合しますが、AAA(7:1)には届きません。
よくある質問
:focusではなく:focus-visibleを使うのはなぜですか?
:focus-visibleは、キーボードで操作したときだけアウトラインを表示し、マウスでクリックしたときは表示しません。そのため、マウス利用者の邪魔をせずにキーボード利用者を助けられます。フォーカスのアウトラインは、代わりのものを用意せずに消してはいけません。
HSLではなくOKLCHで暗くするのはなぜですか?
HSLの明度は知覚に基づいていないため、黄色と青を同じHSLの量だけ暗くしても見え方が大きく変わります。OKLCHの明度は色相にかかわらず段階が均等に見えるので、ホバー状態が一貫して感じられます。
prefers-reduced-motionは追加すべきですか?
はい。生成されるCSSは、システムで動きを減らす設定にしている人に対してトランジションを無効にします。アクセシビリティ設定を尊重する小さな配慮です。
出典
最終更新:
この入力内容のページアドレス: https://kakao.mobile/ja/tools/css-button-generator/
このツールを引用する
kakaoCalc. (2026, November 8). CSSボタン ジェネレーター. https://kakao.mobile/ja/tools/css-button-generator/
“CSSボタン ジェネレーター.” kakaoCalc, 8 Nov. 2026, kakao.mobile/ja/tools/css-button-generator/.