- HOME
- > BLOG CATEGORY
- 【CSS】擬似要素、beforeとafterに画像を表示しサイズの調整ついて!
- お知らせ
- NEW 2024.05.16 【CSS】グラデーション色々なパターンを解説!
- お知らせ
- NEW 2024.05.15 【WordPress】親カテゴリーの子カテゴリー一覧を表示する方法
- お知らせ
- 2024.05.09 【レスポンシブデザイン】アニメーションが動かない原因
こんな方に読んでほしい
before
とafter
の使い方について学びたい方へ[記事の内容]
CSSの擬似要素beforeとafterは、指定した要素の前に(before)または要素の後に(after)擬似的な要素を追加することができます。
beforeとafter
<div class="btn"><a href="#">詳細を見る</a></div>
.btn {
width: 300px;
position: relative;
}
.btn::before {
}
.btn::after {
}
上記のコードのは、要素にposition: relative
を指定しています。
「relative」は必須なので指定を忘れないようにしましょう。
::beforeの「●」の指定方法について解説していきます。
擬似要素のbeforeとafterは画像以外にも文字の表示も可能になります。
beforeの設置方法
<div class="btn"><a href="#">詳細を見る</a></div>
.btn {
width: 300px;
position: relative;
}
.btn a {
font-size: 16px;
border-radius: 30px;
display: block;
padding: 15px 0;
text-align: center;
color: #fff;
background: #e4505b;
border: 2px solid #e4505b;
text-decoration: none;
}
.btn a:hover {
color: #e4505b;
background: #fff;
border: 2px solid #e4505b;
text-decoration: none;
}
.btn a::before {
content: "●";
color: #fff;
position: absolute;
top: 30%;
left: 10%;
}
.btn a:hover::before {
color: #e4505b;
}
上記のコードでは、::before
のみ指定しています。
「before」には、「absolute」は必須なので指定を忘れないようにしましょう。
また、「hover」を指定する際には、:hover::before
繋げて指定するようにしましょう。
::afterの「矢印」の指定方法について解説していきます。
今回は「content」を使用せずに、background: url("")
を使用します。
ポイント!
backgroundで指定した方が、サイズの調整、位置の調整が簡単に指定ができます。
また、contentでは、「width」や「height」でサイズ調整はできません。
afterの設置方法
<div class="btn"><a href="#">詳細を見る</a></div>
.btn {
width: 300px;
position: relative;
}
.btn a {
font-size: 16px;
border-radius: 30px;
display: block;
padding: 15px 0;
text-align: center;
color: #fff;
background: #e4505b;
border: 2px solid #e4505b;
text-decoration: none;
}
.btn a:hover {
color: #e4505b;
background: #fff;
border: 2px solid #e4505b;
text-decoration: none;
}
.btn a::before {
content: "●";
color: #fff;
position: absolute;
top: 30%;
left: 10%;
}
.btn a:hover::before {
color: #e4505b;
}
.btn a::after {
content: "";
display: inline-block;
position: absolute;
top: 38%;
right: 10%;
background: url(arrow-off.png) no-repeat;
background-size: contain;
width: 15px;
height: 15px;
}
.btn a:hover::after {
background: url(arrow-on.png) no-repeat;
background-size: contain;
}
上記のコードでは、::after
には、「background」で画像を指定したので、
content
は指定しませんが、必ず「content: “”」の中身は空でも問題はないので指定しておきましょう。
::afterの「矢印」にアニメーションを指定します。
hoverをすると矢印が右に動くアニメーションを設置します。
アニメーションの設置方法
<div class="btn"><a href="#">詳細を見る</a></div>
.btn {
width: 300px;
position: relative;
}
.btn a {
font-size: 16px;
border-radius: 30px;
display: block;
padding: 15px 0;
text-align: center;
color: #fff;
background: #e4505b;
border: 2px solid #e4505b;
text-decoration: none;
}
.btn a:hover {
color: #e4505b;
background: #fff;
border: 2px solid #e4505b;
text-decoration: none;
}
.btn a::before {
content: "●";
color: #fff;
position: absolute;
top: 30%;
left: 10%;
}
.btn a:hover::before {
color: #e4505b;
}
.btn a::after {
content: "";
display: inline-block;
position: absolute;
top: 38%;
right: 10%;
background: url(arrow-off.png) no-repeat;
background-size: contain;
width: 15px;
height: 15px;
transition: all .3s;
}
.btn a:hover::after {
background: url(arrow-on.png) no-repeat;
background-size: contain;
right: 8%;
}
上記のコードでは、transition: all .3s
を指定し、
「hover」すると、「right: 10%からright: 8%」まで動くアニメーションになります。
今回はこれで以上です。
擬似要素、beforeとafter
2024.05.15
2024.05.09
2024.03.07
2023.12.14
2024.05.15
2024.05.14
2024.05.09
2024.05.09
2024.05.09
2024.05.09
2023.06.15
2022.06.30
2020.03.22
2020.03.06
© 2023 shu-naka-blog