CSS料金表ジェネレーター
料金表は、重要なマーケティング上の一等地です。明確で、ざっと読め、ビジネスが選んでほしいプランへ訪問者を導く必要があります。このジェネレーターは、プラン名、価格、そして価格とCTAボタン用のアクセントカラーを持つ料金カードをHTML+CSSで1枚作成します。カードを横に並べて料金表を作り、コードをランディングページにコピーしてください。
料金表を作る方法
-
1
プラン名を入力
カード上部に表示されるプラン名(例:「Pro」)。
-
2
価格を設定
大きな文字で表示される価格(例:「$29」)。「/mo」の接尾辞は自動で追加されます。
-
3
アクセントカラーを選ぶ
価格とCTAボタンに使われます。ブランドに合う色を選んでください。
-
4
コードをコピー
カードには機能リストとCTAボタンが組み込まれ、<style>ブロックも付属します。項目はコード内で直接編集できます。
-
5
ほかのプランでも繰り返す
料金表を完成させるには、各プランのカードを複製してグリッドに並べます。
骨格の構造
<section class="pricing">
<article class="plan">
<h3>Starter</h3>
<p class="price">$9 <span>/mo</span></p>
<p class="tagline">For solo projects.</p>
<ul class="features">
<li>3 projects</li>
<li>10 GB storage</li>
<li>Community support</li>
</ul>
<a class="cta" href="#">Start free</a>
</article>
<article class="plan featured">
<span class="badge">Most popular</span>
<h3>Pro</h3>
<p class="price">$29 <span>/mo</span></p>
<!-- ... -->
</article>
<article class="plan">
<h3>Team</h3>
<!-- ... -->
</article>
</section>
レスポンシブな3列グリッド
.pricing {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
gap: 1.5rem;
align-items: stretch;
}
.plan {
padding: 2rem 1.5rem;
background: #fff;
border: 1px solid #e5e7eb;
border-radius: 12px;
display: flex;
flex-direction: column;
}
.plan.featured {
border: 2px solid #2563eb;
position: relative;
transform: translateY(-4px);
box-shadow: 0 10px 30px rgba(37, 99, 235, 0.15);
}
auto-fit+minmax(240px, 1fr)は、デスクトップで3列のレイアウト、モバイルで1列の積み重ねを、他に何も設定せずに実現します。
強調されたプラン
注目を集める視覚的な手がかり:
- ブランドのアクセントに合わせた色付きのボーダー。
- 負のmargin-topまたは
translateY(-4px)でわずかに持ち上げる。 - 他のプランがアウトラインなのに対し、しばしばブランドカラーの大きなCTAボタン。
- 上部に絶対配置されたバッジ(「最も人気」「最もお得」)。
- 目を引くためやや背を高くすることもありますが、比較しにくくなる場合があります。
上記すべてを行わないでください。2つか3つを選びます。手がかりが多すぎると階層が平坦になります。
月額/年額の切り替え
<div class="billing-toggle">
<button data-active="true">Monthly</button>
<button>Annual · Save 20%</button>
</div>
切り替えは通常、少しのJavaScriptで価格の値を入れ替えるか、ラジオボタンの:checked状態を使います。割引率や年間の節約額(例:「年払いで2か月分お得」)を切り替えのラベルに表示してください。多くの料金表で最も説得力のある要素です。
機能の行のスタイリング
.features {
list-style: none;
padding: 0;
margin: 1.5rem 0;
display: flex;
flex-direction: column;
gap: 0.5rem;
}
.features li {
display: flex;
align-items: center;
gap: 0.5rem;
}
.features li.yes::before {
content: "";
width: 16px; height: 16px;
background: url(...check.svg);
}
.features li.no {
color: #9ca3af;
text-decoration: line-through;
}
「含まれる」にはチェックマークを、「含まれない」には灰色のテキストや薄いバツを使ってください。コントラストを下げずにテキスト自体を打ち消すと、強調として読まれてしまいます。
CTAを目立たせ続ける
プランごとに1つのCTA、プラン全体で視覚的に一貫させます。プランごとに異なる文言(「無料で開始」「Proへ」「営業に相談」)は問題なく、むしろ適切なフローへユーザーを導くのに役立ちます。
ざっと読めるようにする
ユーザーは料金表を左から右へ読むことはまれで、まず価格、次にCTA、それから機能の差をざっと見ます。それに最適化してください。
- プラン名+価格を大きく、カードの上部に。
- カードをスクロールせずに見えるCTA。
- その下に機能リスト。同一の機能をどこでも繰り返すのではなく、プラン間の違いを強調します。
アクセシビリティのチェックリスト
- 各プランは独自の
<h3>を持つ<article>である。 - 「最も人気」のバッジは色だけでなく見えるテキストのバッジである(色覚障害のあるユーザーのため)。
- CTAボタンは「ここをクリック」ではなく説明的なテキスト(「Pro体験を開始」)を持つ。
- 課金の切り替えは
aria-pressedまたはラジオのセマンティクスを持つ。 - JavaScriptで実装する場合、切り替え時の価格変更は
aria-live="polite"で読み上げる。
よくある質問
3つはマーケティングの定番で、ざっと読みやすく、明確な中間の選択肢を強調します。4つは、本当に4つの対象層(個人/チーム/ビジネス/エンタープライズ)がある場合に有効です。5つ以上は通常、訪問者を混乱させます。表を2つに分けるか、比較表を追加してください。
ビジネス次第です。年額を既定にすると割引が強調されアンカリングが効きます。月額を既定にすると押しが弱まります。収益が重要ならA/Bテストを。折衷案として、年額を既定にしつつ月額の選択肢を1クリックで選べるようにします。
グリッドのrepeat(auto-fit, minmax(240px, 1fr))が自動で行います。ビューポートが約800px未満になると、カードはメディアクエリなしで1列に切り替わります。
価格の昇順で並べる場合は最も右です。CTAのテキストは価格ではなく「営業に問い合わせる」とし、ざっと読めるようカードは他と視覚的に揃えるべきです。価格比較を妨げないよう、エンタープライズを表の下の別セクションに置く企業もあります。
関連ツール
ASCII表リファレンス
0から127までの完全なASCII表です。NUL、LF、DELなどの制御コードを含め、各文字の10進数、16進数、8進数、2進数、HTML数値文字参照を表示します。
HTML文字参照
HTMLエンティティの検索可能なリスト、その名称コードおよび数値コード、および特殊文字や記号のワンクリックコピー機能を提供します。
キーボードショートカット一覧
macOS、Windows、Linux向けに、VS Code、Chrome、GNU Readlineを使うBashの公式資料に基づく既定ショートカットを検索できます。
HTML フォーマッター
ブラウザ内で HTML を 2 または 4 スペースで整形します。HTML はアップロードも検証もされません。
カラーパレットジェネレーター
基準のHEXカラーから、モノクロマティック、類似色、補色、トライアド、テトラードのパレットを生成し、コピーしやすいCSS変数として書き出します。
バイナリからASCIIへの変換ツール
バイナリ(スペース区切りのバイト、または長いビット列)を貼り付けると、それが表すASCIIテキストを8ビットずつ復号して取得できます。