アイコン付きボタンの作り方|HTMLとCSSでおしゃれに仕上げる

アイコンとテキストをひとつにまとめた「アイコン付きボタン」を、HTMLとCSSだけでおしゃれに作る方法をご紹介!
この記事ではFont Awesomeの導入から、実際に使えるコピペ用コード、デザイン調整のコツまでを丁寧に解説します。
WordPressやNotionのサイトでもすぐに使える実装手順ですので、リンクボタンをわかりやすく、印象的に仕上げたい方にぴったりです。
完成イメージ|HTMLとCSSを使ったアイコン付きボタンリンク

HTMLとCSSを使って、このようなボタンリンクを作ってみました。
実はリットリンクのボタンリンクをイメージして作ってるんです♪

このように配置することで、リンク集としても活用できます。
この記事でできること
実際のHTMLコードとCSSコードを紹介するので、コピペで上記のボタンを実装することが可能です。
(少しの編集も必要)
また、丁寧に実装の手順も解説しているので、コーディング初心者さんでもおしゃれなボタンリンクをカスタマイズできます。
この記事はこんな人におすすめ
- Webサイトでおしゃれなボタンリンクを設置したい人
- 個性的なボタンリンクのHTML・CSSが知りたい人
- WordPressを使っている人
- Notionのサイトビルダーを使っている人
準備|Font Awesomeの導入(CDN・テーマ別設定)
まずはアイコンを使用(表示)できる環境にしていきます。
headタグへのコード埋め込みで導入(共通)
アイコンはFont Awesomeを使用しますので、サイトのheadセクションにFont Awesomeのコードを設置します。
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css">上記のコードを、サイトのheadタグ内に追加してください。
WordPressテーマSWELLの場合

WordPressテーマがSWELLの場合は「SWELL設定」の「Font Awesome」タブから「CSSで読み込む」にチェックを入れて変更を保存してください。
WordPressテーマSWELLについて知りたい方はこちらの記事をチェック
WordPressテーマCocoonの場合


WordPressテーマがCocoonの場合はデフォルトでFont Awesomeが設置されているので、コード貼り付けは不要です。
NotionサイトビルダーBulletの場合
Notionでは、サイトビルダーサービスを使うことでHTMLやCSSのカスタマイズができるようになります。
BulletというNotion専用のサイトビルダーを使う場合はFont Awesomeのコードを設置する必要があるので、先ほどのコードをheadタグに貼り付けます。
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css">ダッシュボードのサイドバーメニューから、Code→Global Custom CodeのHeadに貼り付けてください。

これでFont Awesomeのアイコンをサイトに表示できるようになります。
Notionサイトビルダーのお話をしましたが、シンプルおしゃれな問い合わせフォームやアンケートフォームなどを作れる「Tally」というサービスをおすすめしています。
Notion単体でページをおしゃれにカスタマイズしたい方は以下の記事も参考にしてください、。
Notionのページをおしゃれにカスタマイズしたい方はこちら
作り方|アイコン付きボタンをHTMLとCSSコードで設置
ここからは実際にアイコン付きボタンを作るためのコードを紹介していきます。
アイコン付きボタンを設置するためのHTMLコードと編集方法
実際のHTMLです。
<a href="#" class="button-link">
<div class="icon">
<i class="fa-regular fa-pen-to-square"></i>
</div>
<div class="content">
<div class="title">タイトル</div>
<div class="description">説明文</div>
</div>
</a>1行目の#マークの部分をリンクにするURLに変更します。
タイトル、説明の箇所をご希望のものに書き換えてください。
これでHTMLの基本は完成です。
アイコン付きボタンを設置するためのCSSコードと編集方法
実際のCSSコードです。(レスポンシブ対応)
.button-link {
display: flex;
align-items: center;
gap: 16px;
padding: 15px;
margin: 7px;
background-color: #f8f9fa;
border: 1px solid #e0e0e0;
border-radius: 8px;
text-decoration: none;
color: inherit;
transition: all 0.3s ease;
width: 380px;
max-width: 100%;
/* 画面幅を超えないように */
box-sizing: border-box;
/* paddingを含めた幅計算 */
}
.icon {
flex-shrink: 0;
width: 32px;
height: 32px;
display: flex;
align-items: center;
justify-content: center;
font-size: 32px;
color: #1a1a1a;
}
.content {
flex: 1;
display: flex;
flex-direction: column;
gap: 4px;
min-width: 0;
/* テキストの折り返しを適切に */
}
.title {
font-size: 16px;
font-weight: 600;
color: #1a1a1a;
}
.description {
font-size: 14px;
color: #6b6b6b;
line-height: 1.4;
}
/* タブレット用(768px以下) */
@media (max-width: 768px) {
.button-link {
width: 350px;
max-width: 100%;
margin: 14px;
gap: 14px;
}
.icon {
width: 28px;
height: 28px;
font-size: 28px;
}
.title {
font-size: 15px;
}
.description {
font-size: 13px;
}
}
/* スマートフォン用(480px以下) */
@media (max-width: 480px) {
.button-link {
width: 350px;
max-width: 100%;
padding: 12px;
gap: 12px;
}
.icon {
width: 24px;
height: 24px;
font-size: 24px;
}
.title {
font-size: 14px;
}
.description {
font-size: 12px;
line-height: 1.3;
}
}このCSSをこのまま使うと、以下のカラーリング、デザインで反映されます。

コードはサイトのCSSに追加してください。
ちなみに、全体のCSSに追加するとサイト全体でこのデザインのボタンリンクを使えるようになります。
そして個別ページのCSSに追加することで該当のページのみでこのボタンリンクのデザインを使えるため、お好みでCSSの貼り付け箇所は変えてください。
Font Awesomeのアイコンを変更する時はHTMLを編集
Font Awesomeのアイコンを変更する時はご紹介したHTMLの3行目を編集します。

お好みのアイコンをクリックし、HTMLタブのコードをクリックするとコピーされるのでそちらを使います。
<i class="fa-brands fa-x-twitter"></i>
このコードを、先ほどのボタンリンク用HTMLの3行目とまるまる置き換えます。
一度3行目を削除して貼り付けてください。
ボタンのカラーリングを変えたい場合

上記のようにデザインはそのまま、カラーリングを変える場合はカラーコードを編集します。
.button-link {
display: flex;
align-items: center;
gap: 16px;
padding: 15px;
margin: 7px;
background-color: #FAE9F1;
border: 1px solid #DA6BA5;
border-radius: 8px;
text-decoration: none;
color: inherit;
transition: all 0.3s ease;
width: 380px;
max-width: 100%;
/* 画面幅を超えないように */
box-sizing: border-box;
/* paddingを含めた幅計算 */
}
.icon {
flex-shrink: 0;
width: 32px;
height: 32px;
display: flex;
align-items: center;
justify-content: center;
font-size: 32px;
color: #C14D8A;
}
.content {
flex: 1;
display: flex;
flex-direction: column;
gap: 4px;
min-width: 0;
/* テキストの折り返しを適切に */
}
.title {
font-size: 16px;
font-weight: 600;
color: #C14D8A;
}
.description {
font-size: 14px;
color: #DA6BA5;
line-height: 1.4;
}
/* タブレット用(768px以下) */
@media (max-width: 768px) {
.button-link {
width: 350px;
max-width: 100%;
margin: 14px;
gap: 14px;
}
.icon {
width: 28px;
height: 28px;
font-size: 28px;
}
.title {
font-size: 15px;
}
.description {
font-size: 13px;
}
}
/* スマートフォン用(480px以下) */
@media (max-width: 480px) {
.button-link {
width: 350px;
max-width: 100%;
padding: 12px;
gap: 12px;
}
.icon {
width: 24px;
height: 24px;
font-size: 24px;
}
.title {
font-size: 14px;
}
.description {
font-size: 12px;
line-height: 1.3;
}
}このCSSの7、8、28、43、48行目をお好きなカラーコードに変更してください。(#◯◯◯◯)
そうすることでボタンリンクをお好みのカラーに変えることができます。
カラーコードの検索などに使えるアプリとwebツールのおすすめを載せておきます
表示の確認にはCodePenというツールも有効活用できます♪
See the Pen リットリンク風ボタン by hikari (@hiina7) on CodePen.
応用|WordPressとBulletでのボタンリンク設置手順
ここからはWordPressなどに実際にボタンリンクを設置する手順を解説します。
WordPressテーマSWELLの場合


ご紹介したHTMLコードを貼り付けてURL、アイコン、タイトル、説明文を編集します。
ご紹介したCSSを「追加CSS」に貼り付けます。
SWELLの購入はこちら
NotionサイトビルダーBulletの場合

ご紹介したFont AwesomeのHTMLコードをheadタグに貼り付けて保存します。
Notionページのボタンを表示させたい箇所にコードブロックを追加しボタンリンクのHTMLを貼り付けます。

言語はHTMLを選択して、キャプションに「bullet:HTML」と入力します。
サイトのCode→CSSに紹介したCSSを貼り付けます。
まとめ|アイコン付きボタンの作り方
今回はHTMLとCSSだけで「アイコン付きボタン」を作る方法として、Font Awesomeの導入からコピペで使えるコード、配色の調整までご紹介しました。(レスポンシブ対応です。)
リンクの可視性やクリック率を高めたいときに、タイトル+説明文+アイコンの三点セットはとても相性が良いです。
まずは記事内のサンプルをそのまま設置し、テキストとカラーコードを自分のサイトに合わせて調整してみてください。
WordPress(SWELL/Cocoon)やNotionのサイトビルダーBulletでも同じ考え方で実装できます。
制作のヒントになればうれしいです。
こちらの記事もおすすめです♪






C O M M E N T S