この記事では、ワードプレスのブロックエディタを使って簡単にテキストリンクを装飾する手順をご紹介します。CSSを活用することでスタイリッシュで統一感のあるリンクデザインを作成できます。
ワードプレスにはテーマによってボタンを作る機能がありますが、今回はあくまで普通のテキストリンクの装飾です。
いつものコレ
手順/CSSでテキストリンクをおしゃれに装飾
ワードプレスのブロックエディタでテキストリンクを装飾する手順です。
- Step1テキストリンクを作成
まずリンクを作成します。ブロックエディタでリンクを挿入するか、以下のようにHTMLで直接記述します。
<p><a href="リンク先URL">テキストリンク</a></p>
これで、テキストリンクが通常の青色で下線付きで表示されます。
- Step2クラスを追加
次に、リンクにスタイルを適用するために「追加CSSクラス」を使ってクラスを設定します。
- テキストリンクを選択します。
- 「高度な設定」を開きます。
- 「追加CSSクラス」にクラス名を入力します。例:
link-btn
※複数のクラスを追加する場合は、クラス名を半角スペースで区切ります。「」
や” “
は不要です。
「追加CSSクラス」を設定すると、以下のようなHTMLが自動生成されます。
<p class="link-btn"><a href="#">テキストリンク</a></p>
注意
- 段落全体にスタイルを適用する場合:
<p>
タグにクラスを追加します。この場合リンク部分が改行されて表示されます。 - リンク部分のみをスタイリングする場合:文の途中にスタイルを適用したいときは、リンク部分を
<span>
タグで囲みクラスを直接入力します。
文の途中でリンクを装飾する例<p>ここにある<span class="link-btn"><a href="#">テキストリンク</a></span>を装飾します。</p>
「追加CSSクラス」を使わずに、直接HTMLを入力してもOKです。
- Step3CSSの入力
最後に、スタイルシート(テーマの「追加CSS」や子テーマのCSSファイル)に以下のCSSを入力してスタイルを適用します。一度設定しておけば、同じクラス名でどこでも再利用できます。
- 「追加CSSクラス」を使うメリット
- コードを直接編集しなくてもスタイルを簡単に適用できる。
- 再利用が簡単で、統一感のあるデザインを管理しやすい。
- 改行を避けたい場合
- 文中のリンクだけを装飾する場合は直接HTMLで
<span>
を使い<p>
タグの影響を避けましょう。
- 文中のリンクだけを装飾する場合は直接HTMLで
テーマ「Cocoon」の場合
- 管理画面の「外観」から「テーマファイルエディター」をクリック
- Cocoon Child: スタイルシート (style.css) のページが開きます
- 元から書いているコード(テーマ情報)は消さずにCSSを記述します
- /* 子テーマ用のスタイルを書く*/から下の行に追加しましょう
サンプル/CSSでテキストリンクをおしゃれに装飾
ボタン風(背景色あり)
- クラスを共通スタイル「 link-btn」 + カラー別「color-〇」に分けています
- CSSは「 .link-btn」 「.color-〇」の両方をコピペします
- 追加CSSクラスには「 link-btn color-〇」の両方を追加します(2つのクラスは半角スペースで区切ります)
- マウスをのせると背景色が「背景色あり」→「白抜き」に変化します
/* ボタン風スタイル(共通) */
.link-btn a {
display: inline-block; /* インラインブロック要素にする */
padding: 3px 20px; /* ボタンの内側の余白(上下・左右) */
color: white; /* 文字色を白に設定 */
text-decoration: none; /* 下線を非表示 */
border: 2px solid transparent; /* ボタンの枠線を透明に設定 */
transition: all 0.3s ease; /* ホバー時の変化をなめらかに */
}
.link-btn a:hover {
background-color: transparent; /* ホバー時に背景色を透明に設定 */
}
<p class="link-btn color-1"><a href="#">テキストリンク</a></p>
.color-1 a{
--btn-color:#b3b3b3;/*ボタンの色*/
background-color: var(--btn-color);
}
.color-1 a:hover {
color: var(--btn-color);
border-color:var(--btn-color);
}
<p class="link-btn color-2"><a href="#">テキストリンク</a></p>
.color-2 a{
--btn-color:#b5b089;/*ボタンの色*/
background-color: var(--btn-color);
}
.color-2 a:hover {
color: var(--btn-color);
border-color:var(--btn-color);
}
<p class="link-btn color-3"><a href="#">テキストリンク</a></p>
.color-3 a{
--btn-color:#7b8fa1;/*ボタンの色*/
background-color: var(--btn-color);
}
.color-3 a:hover {
color: var(--btn-color);
border-color:var(--btn-color);
}
<p class="link-btn color-4"><a href="#">テキストリンク</a></p>
.color-4 a{
--btn-color:#d9b38c;/*ボタンの色*/
background-color: var(--btn-color);
}
.color-4 a:hover {
color: var(--btn-color);
border-color:var(--btn-color);
}
<p class="link-btn color-5"><a href="#">テキストリンク</a></p>
.color-5 a{
--btn-color:#8aa693;/*ボタンの色*/
background-color: var(--btn-color);
}
.color-5 a:hover {
color: var(--btn-color);
border-color:var(--btn-color);
}
ボタン風(白抜き)
- クラスを共通スタイル「 link-btn-border」 + カラー別「color-〇」に分けています
- CSSは「 .link-btn-border」 「.color-〇」の両方をコピペします
- 追加CSSクラスには「 link-btn-border color-〇」の両方を追加します(2つのクラスは半角スペースで区切ります)
- マウスをのせると背景色が「白抜き」→「背景色あり」に変化します
/* ボタン風スタイル */
.link-btn-border a {
display: inline-block; /* インラインブロック要素にする */
padding: 3px 20px; /* ボタンの内側の余白(上下・左右) */
text-decoration: none; /* 下線を非表示 */
border: 2px solid; /* ボタンに枠線を設定 */
transition: all 0.3s ease; /* ホバー時の変化をなめらかに */
}
.link-btn-border a:hover {
color: white; /* ホバー時に文字色を白に変更 */
}
<p class="link-btn-border color-6"><a href="#">テキストリンク</a></p>
.color-6 a{
--btn-color:#bfbfbf;/*ボタンの色*/
border-color: var(--btn-color);
color: var(--btn-color);
}
.color-6 a:hover {
background-color: var(--btn-color);
}
<p class="link-btn-border color-7"><a href="#">テキストリンク</a></p>
.color-7 a{
--btn-color:#8fa3b8;/*ボタンの色*/
border-color: var(--btn-color);
color: var(--btn-color);
}
.color-7 a:hover {
background-color: var(--btn-color);
}
<p class="link-btn-border color-8"><a href="#">テキストリンク</a></p>
.color-8 a{
--btn-color:#96a68a;/*ボタンの色*/
border-color: var(--btn-color);
color: var(--btn-color);
}
.color-8 a:hover {
background-color: var(--btn-color);
}
<p class="link-btn-border color-9"><a href="#">テキストリンク</a></p>
.color-9 a{
--btn-color:#9a94a4;/*ボタンの色*/
border-color: var(--btn-color);
color: var(--btn-color);
}
.color-9 a:hover {
background-color: var(--btn-color);
}
<p class="link-btn-border color-9"><a href="#">テキストリンク</a></p>
.color-9 a{
--btn-color:#9a94a4;/*ボタンの色*/
border-color: var(--btn-color);
color: var(--btn-color);
}
.color-9 a:hover {
background-color: var(--btn-color);
}
<p class="link-btn-border color-10"><a href="#">テキストリンク</a></p>
.color-10 a{
--btn-color:#b09c80;/*ボタンの色*/
border-color: var(--btn-color);
color: var(--btn-color);
}
.color-10 a:hover {
background-color: var(--btn-color);
}
矢印風
- スタイリッシュな矢印風のスタイルです
- マウスをのせると矢印が少し動くようにしています
- 追加CSSクラスに入力するのはクラス名「arrowbtn」の部分です
入力するクラスはここでチェック
<p class="arrowbtn"><a href="#">テキストリンク</a></p>
<p class="arrowbtn"><a href="#">テキストリンク</a></p>
/* 矢印---------------------------------------------- */
.arrowbtn a {
--arrow-color:#333; /* 矢印の色を設定 */
position: relative; /* 疑似要素を位置指定するための基準 */
padding: 0 2.5em .5em .5em; /* 内側の余白(右に矢印部分を空ける) */
color: var(--arrow-color); /* 文字色を矢印の色と統一 */
text-decoration: none; /* 下線を非表示 */
}
.arrowbtn a::before {
border-bottom: 1px solid var(--arrow-color); /* 下線としての矢印部分 */
border-right: 1px solid var(--arrow-color); /* 右線としての矢印部分 */
bottom: 0; /* 矢印をボタン下部に配置 */
content: ''; /* 疑似要素でコンテンツを空に設定 */
height: 12px; /* 矢印の高さ */
position: absolute; /* 親要素から相対的に配置 */
left: 0; /* 矢印の位置を左端に */
transform: skewX(50deg); /* 矢印の形状を傾けてデザイン */
width: 100%; /* ボタン全体の幅に矢印を合わせる */
transition: all .3s; /* なめらかな動き(ホバー時) */
}
/* マウスオーバー時の動き */
.arrowbtn a:hover::before {
left: 10%; /* ホバー時、矢印が右に10%ずれる */
}
<p class="arrowbtn-2"><a href="#">テキストリンク</a></p>
/* 矢印-2---------------------------------------------- */
.arrowbtn-2 a {
--arrow-color: #333; /* 矢印の色を設定 */
display: inline-flex; /* 横並びに配置 */
align-items: center; /* 垂直方向を中央に揃える */
color: var(--arrow-color); /* 文字色を矢印の色と一致 */
text-decoration: none; /* 下線を非表示 */
position: relative; /* 疑似要素の位置基準 */
}
.arrowbtn-2 a::after {
border-bottom: 1px solid var(--arrow-color); /* 下線のスタイルを矢印として設定 */
border-right: 1px solid var(--arrow-color); /* 右線のスタイルを矢印として設定 */
content: ''; /* 疑似要素のコンテンツを空に設定 */
width: 30px; /* 矢印の幅を30pxに設定 */
height: 10px; /* 矢印の高さを10pxに設定 */
position: absolute; /* 親要素に対して絶対位置 */
left: 100%; /* テキストの右端に配置 */
transform: skewX(50deg); /* 矢印の傾きの調整 */
transition: all .3s; /* なめらかな移動効果 */
}
/* マウスオーバー時の動き */
.arrowbtn-2 a:hover::after {
margin-left: 10px; /* マウスオーバー時に矢印を10px右に移動 */
}
<p class="arrowbtn-3"><a href="#">テキストリンク</a></p>
/* 矢印(右に移動して背景がつく) */
.arrowbtn-3 a {
--arrow-color: #555; /* 矢印と枠線の色 */
position: relative; /* 疑似要素の基準 */
border: 1px solid var(--arrow-color); /* ボタンの枠線 */
color: var(--arrow-color); /* 文字色を矢印色に */
text-decoration: none; /* 下線を非表示 */
padding: 8px 30px; /* 内側の余白 */
display: inline-block; /* インラインブロックで中央揃え */
text-align: center; /* テキストを中央揃え */
transition: all .2s linear; /* 背景色と文字色の変化をなめらかに */
}
.arrowbtn-3 a:hover {
background: #999;/* ホバー時の背景色 */
color: #fff; /* ホバー時の文字色 */
}
.arrowbtn-3 a::before {
border-bottom: 1px solid var(--arrow-color); /* 矢印の下線 */
border-right: 1px solid var(--arrow-color); /* 矢印の右線 */
content: ''; /* 疑似要素のコンテンツを空に設定 */
height: 10px; /* 矢印の高さ */
position: absolute; /* 親要素に対する位置指定 */
top: calc(50% - 10px); /* ボタンの中央に配置 */
right: -20px; /* ボタンの右端から20px外に配置 */
transform: skewX(50deg); /* 矢印の傾き */
width: 40px; /* 矢印の幅 */
transition: all .3s; /* 矢印の移動をなめらかに */
}
/* hoverした際の移動 */
.arrowbtn-3 a:hover::before {
right: -25px; /* ホバー時、矢印を右に5px移動 */
}
<p class="arrowbtn-4"><a href="#">テキストリンク</a></p>
/* ボタン(矢印付き)--------------------------------- */
/* ボタンのスタイル */
.arrowbtn-4 a {
--arrow-color: #333; /* 矢印の色 */
display: inline-block; /* インラインブロック要素にする */
border: 1px solid #b5b5ae; /* ボタンの枠線の設定(太さ、種類、色) */
color: var(--arrow-color); /* 文字色を矢印の色と合わせる */
padding: 10px 50px 10px 20px; /* 内側の余白(上・右・下・左) */
text-decoration: none; /* 下線を非表示 */
border-radius: 99px; /* ボタンを丸みのある角に */
transition: .3s all; /* 変化をゆっくりにする */
position: relative; /* 疑似要素の位置基準 */
}
/* 矢印のスタイル */
.arrowbtn-4 a:after {
content: ''; /* 疑似要素で矢印を描写 */
border-bottom: 1px solid var(--arrow-color); /* 矢印の下線の設定 */
border-right: 1px solid var(--arrow-color); /* 矢印の右線の設定 */
width: 15px; /* 矢印の幅 */
height: 3px; /* 矢印の高さ */
transform: skewX(45deg); /* 矢印の角度 */
position: absolute; /* 親要素からの位置指定 */
right: 20px; /* ボタンの右からの距離 */
bottom: 50%; /* ボタンの中央位置に配置 */
transition: .3s all; /* 変化をスムーズに */
}
/* マウスオーバー時の変化 */
.arrowbtn-4 a:hover {
--link-btn-color: #b5b5ae; /* ホバー時のボタン色 */
background-color: var(--link-btn-color); /* 背景色を変更 */
border-color: var(--link-btn-color); /* 枠線色を変更 */
color: #fff; /* 文字色を白に */
}
.arrowbtn-4 a:hover:after {
border-color: #fff; /* ホバー時に矢印の色を白に変更 */
right: 15px; /* 矢印の位置を左へ少し移動 */
}
<p class="arrowbtn-5"><a href="#">テキストリンク</a></p>
/* ボタン(矢印付き)--------------------------------- */
/* ボタンのスタイル */
.arrowbtn-5 a {
--arrow-color: #333; /* 矢印の色 */
display: inline-block; /* インラインブロック要素にする */
border: 1px solid #b5b5ae; /* ボタンの枠線の設定(太さ、種類、色) */
color: var(--arrow-color); /* 文字色を矢印の色と合わせる */
padding: 10px 50px 10px 20px; /* 内側の余白(上・右・下・左) */
text-decoration: none; /* 下線を非表示 */
transition: .3s all; /* 変化をゆっくりにする */
position: relative; /* 疑似要素の位置基準 */
}
/* 矢印のスタイル */
.arrowbtn-5 a:after {
content: ''; /* 疑似要素で矢印を描写 */
border-bottom: 1px solid var(--arrow-color); /* 矢印の下線の設定 */
border-right: 1px solid var(--arrow-color); /* 矢印の右線の設定 */
width: 15px; /* 矢印の幅 */
height: 3px; /* 矢印の高さ */
transform: skewX(45deg); /* 矢印の角度 */
position: absolute; /* 親要素からの位置指定 */
right: 20px; /* ボタンの右からの距離 */
bottom: 50%; /* ボタンの中央位置に配置 */
transition: .3s all; /* 変化をスムーズに */
}
/* マウスオーバー時の変化 */
.arrowbtn-5 a:hover {
--link-btn-color: #b5b5ae; /* ホバー時のボタン色 */
background-color: var(--link-btn-color); /* 背景色を変更 */
border-color: var(--link-btn-color); /* 枠線色を変更 */
color: #fff; /* 文字色を白に */
}
.arrowbtn-5 a:hover:after {
border-color: #fff; /* ホバー時に矢印の色を白に変更 */
right: 15px; /* 矢印の位置を左へ少し移動 */
}
マウスオーバーで下線を引く
- デフォルトのリンク下線を消します
- マウスをのせると下線が伸びてきます
- ① 中央から左右へ
- ② 左から右へ
- 追加CSSクラスに入力するのはクラス名「①move-line」「②move-line-left」の部分です
<p class="move-line"><a href="#">テキストリンク</a></p>
マウスをのせてみてください
<p class="move-line"><a href="#">中央から左右に下線</a></p>
/* 中央から下線 */
.move-line a {
text-decoration: none; /* リンクの下線を消す */
position: relative; /* 擬似要素の基準位置を設定 */
color: #333; /* リンクテキストの色 */
padding-bottom: 10px; /* リンクテキスト下部の余白 */
}
.move-line a::before {
content: ""; /* 擬似要素の内容は空に設定 */
position: absolute; /* リンクを基準に絶対位置を指定 */
left: 50%; /* 下線を中央から表示するための開始位置 */
bottom: 0; /* リンクテキストの下に下線を配置 */
width: 0; /* 初期の下線幅を0に設定 */
height: 2px; /* 下線の太さ */
background-color: #333; /* 下線の色 */
transition: all 0.4s ease; /* ホバー時の下線アニメーション効果 */
}
.move-line a:hover::before {
width: 100%; /* ホバー時に下線が全体に広がるよう設定 */
left: 0; /* 下線の開始位置を左端に設定 */
}
<p class="move-line-left"><a href="#">左から右に下線</a></p>
/* 左から右に下線 */
.move-line-left a {
text-decoration: none; /* リンクの下線を消す */
position: relative; /* 擬似要素の基準位置を設定 */
color: #333; /* リンクテキストの色 */
padding-bottom: 10px; /* リンクテキスト下部の余白 */
}
.move-line-left a::before {
content: ""; /* 擬似要素の内容は空に設定 */
position: absolute; /* リンクを基準に絶対位置を指定 */
left: 0; /* 下線を左端から表示するための開始位置 */
bottom: 0; /* リンクテキストの下に下線を配置 */
width: 0; /* 初期の下線幅を0に設定 */
height: 2px; /* 下線の太さ */
background-color: #333; /* 下線の色 */
transition: all 0.4s ease; /* ホバー時の下線アニメーション効果 */
}
.move-line-left a:hover::before {
width: 100%; /* ホバー時に下線が全体に広がるよう設定 */
}
改行しないで文の途中にテキストリンクスタイルを適用する場合
文の途中でリンクスタイルを適用する場合、<span>
要素を使って特定のテキスト部分にクラスを追加し、スタイルを適用できます。以下はその方法の解説です。
<p>こちらの文章の中で、<span class="text-link"><a href="#">テキストリンク</a></span>を設定しています。</p>
こちらの文章の中で、テキストリンクを設定しています。
<span class="text-link">...</span>
で文中のリンク部分だけにクラスを適用しています- CSSで
.text-link a
にスタイルを設定します
こちらの文章の中で、テキストリンク を設定しています。
<p>こちらの文章の中で、<span class="link-btn-border color-6"><a href="#">テキストリンク</a></span>を設定しています。</p>
こちらの文章の中で、テキストリンクを設定しています。
<p>こちらの文章の中で、<span class="move-line-left"><a href="#">テキストリンク</a></span>を設定しています。</p>
あとがき
ボタン風と矢印風のテキストリンクの装飾例を紹介しました。
- テキストリンク作成
- クラスを追加
CSSを入力しておけば、テキストリンクを装飾したいときにクラスを追加するだけ。
便利な「追加CSSクラス」の使い方はこちらのページにまとめました。
とても簡単なので、ぜひ試してみてくださいね。
Comment コメントはこちらへ