Snippet/CSS μŠ€λ‹ˆνŽ«

πŸš€ :before :after 에 text-decoration 효과 μ—†μ• κΈ°

인파_ 2023. 3. 12. 11:47

text-decoration-before-after

μ˜μ‚¬ 클래슀 μ„ νƒμžμ— 밑쀄 효과 μ§€μš°κΈ°

λ¬΄μƒ‰λ¬΄μ·¨ν•œ <a> 링크 νƒœκ·Έλ₯Ό κΎΈλ―ΈκΈ° μœ„ν•΄ :before λ‚˜ :after 에 μ•„μ΄μ½˜μ„ λ„£λŠ” κ²½μš°κ°€ μ’…μ’… μžˆλ‹€.

μ΄λ•Œ anchor νƒœκ·Έμ˜ 밑쀄 효과인 text-decoration 속성을 ν…μŠ€νŠΈμ—λ§Œ μ μš©ν•˜κ³  content μ†μ„±μ˜ μ•„μ΄μ½˜ ν‘œμ‹œ 뢀뢄은 μ μš©ν•˜κ³  싢지 μ•Šμ„λ•Œκ°€ μžˆμ„ν…λ°, 아무리 μ˜μ‚¬ μ„ νƒμžμ— text-decoration μ†μ„±μ„ none으둜 해도 밑쀄이 μ§€μ›Œμ§€μ§€ μ•Šμ€ ν˜„μƒ λ•Œλ¬Έμ— μ• λ‘œμ‚¬ν•­μ΄ 생겼을 것이닀.

해결방법은 μ˜μ‚¬ μ„ νƒμžμ˜ display 속성을 inline-block 으둜 μ„€μ •ν•΄μ£Όλ©΄ λœλ‹€.

<a href="#">My link</a>

<a class="no-underline" href="#">My link</a>
a {
    text-decoration: underline;
}

a:before {
    content: "β˜…";
}

a.no-underline:before {
    /* inline-block μ„€μ •ν•˜κ³  λ°‘μ€„νš¨κ³Όλ₯Ό none으둜 ν•΄μ£Όλ©΄ λœλ‹€ */
    display: inline-block;
    text-decoration: none;
}

See the Pen :before에 text-decoration μ—†μ• κΈ° by barzz12 (@inpaSkyrim) on CodePen.