料金表をパソコンではきれいに表示できても、スマートフォンでは横にはみ出したり、文字が小さくなったりすることがあります。料金は問い合わせ前に確認されやすい重要な情報なので、読みにくい状態を放置すると不安につながります。
本記事では、HTMLとCSSだけでスマートフォンでも読みやすい料金表を作る方法を紹介します。WordPressのカスタムHTMLブロックと追加CSSにも利用できます。
料金表がスマートフォンで崩れる原因

列数が多い表は、画面幅より内容が広くなります。長いサービス名、料金、説明、備考を横一列に詰め込むと、ブラウザが文字を極端に縮めたり、表全体を画面外へ押し出したりします。
表をそのまま縮小するのではなく、必要な列を絞る、横スクロールを許可する、スマートフォンではカード型に切り替える方法があります。
まずはシンプルな料金表を作る
次のHTMLでは、サービス名、内容、料金の3列に絞っています。
<div class="price-table-wrap">
<table class="price-table">
<thead>
<tr>
<th>サービス</th>
<th>内容</th>
<th>料金</th>
</tr>
</thead>
<tbody>
<tr>
<th data-label="サービス">基本プラン</th>
<td data-label="内容">基本作業一式</td>
<td data-label="料金">9,800円〜</td>
</tr>
</tbody>
</table>
</div>
data-labelは、スマートフォン表示で各項目名を表示するために使います。行を追加するときも同じ形式で設定してください。
CSSでパソコン用の見た目を整える

.price-table-wrap {
width: 100%;
overflow-x: auto;
}
.price-table {
width: 100%;
border-collapse: collapse;
background: #fff;
}
.price-table th,
.price-table td {
padding: 16px;
border: 1px solid #dfe5ea;
text-align: left;
vertical-align: top;
}
.price-table thead th {
background: #123b5d;
color: #fff;
}
.price-table tbody td:last-child {
white-space: nowrap;
font-weight: 700;
color: #b34a20;
}
border-collapseで罫線をまとめ、料金列にはwhite-space: nowrapを指定して金額の途中改行を防いでいます。
スマートフォンではカード型に切り替える

次のCSSを追加すると、画面幅640px以下では表の見出しを非表示にし、各行をカードとして表示できます。
@media (max-width: 640px) {
.price-table,
.price-table tbody,
.price-table tr,
.price-table th,
.price-table td {
display: block;
width: 100%;
}
.price-table thead {
position: absolute;
width: 1px;
height: 1px;
overflow: hidden;
clip: rect(0 0 0 0);
}
.price-table tr {
margin-bottom: 16px;
border: 1px solid #dfe5ea;
border-radius: 10px;
overflow: hidden;
}
.price-table th,
.price-table td {
display: grid;
grid-template-columns: 90px 1fr;
gap: 12px;
border: 0;
border-bottom: 1px solid #eef1f3;
}
.price-table th::before,
.price-table td::before {
content: attr(data-label);
color: #5f6b75;
font-size: 13px;
font-weight: 700;
}
.price-table tr > :last-child {
border-bottom: 0;
}
}
見た目だけでなく、HTML上では表の構造を維持しているため、内容の関係も分かりやすくなります。
価格表示で注意したいこと
- 税込・税別を明記する
- 「○円〜」の場合は金額が変わる条件を書く
- 追加料金の有無を説明する
- 古い料金を放置しない
- キャンペーンの期限を明記する
料金を安く見せることより、お客様が総額を想像できることが重要です。個別見積もりの場合も、相談や見積もりが無料かどうかを伝えましょう。
WordPressへ追加する方法
HTMLは投稿編集画面の「カスタムHTML」ブロックへ追加できます。CSSは「外観」の追加CSS、子テーマ、または使用中テーマが提供するCSS欄へ追加します。
テーマやプラグインによって既存の表デザインが優先される場合があります。公開前にスマートフォンのプレビューと実機の両方で確認してください。
まとめ
料金表は列を絞り、スマートフォンではカード型へ切り替えると読みやすくなります。料金、条件、税込表記を一緒に整理し、見た目だけでなく内容の分かりやすさも改善しましょう。
料金表を含むホームページを、難しいコードなしで作る方法もあります。
ホームページクエストなら、料金やサービス内容を入力しながら、スマートフォン対応ページの完成イメージを確認できます。


コメント