๊ฐœ๋ฐœ ๐Ÿพ/HTML,CSS

๊ฐ€์šด๋ฐ์„œ ์ขŒ์šฐ๋กœ ํŽผ์ณ์ง€๊ฒŒ ํ•˜๊ธฐ

JOTOKKI 2021. 6. 13. 20:56
728x90

๋ฉ”๋‰ด๋ฅผ hover ํ–ˆ์„ ๋•Œ ์•„๋ž˜์—์„œ underline์ด ๊ฐ€์šด๋ฐ๋ถ€ํ„ฐ ์—ด๋ฆฌ๋Š” ๋ชจ์…˜์„ ๊ตฌํ˜„ํ•ด ๋ณด๊ณ  ์‹ถ์–ด์„œ ๋งŒ๋“ค์–ด๋ดค์Šต๋‹ˆ๋‹ค. 

๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ชจ์…˜์ž…๋‹ˆ๋‹ค. ๐Ÿ˜Š

ํ•ด๋‹น ๋ชจ์…˜์€ border ๋‚˜ text-decoration ์œผ๋กœ๋Š” ๊ตฌํ˜„ํ•  ์ˆ˜์—†๊ณ , a ํƒœ๊ทธ์˜ :after๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค. 

<div class="wrap">
	<a href="#">HOME</a>
	<a href="#">ABOUT</a>
	<a href="#">Q&A</a>
</div>

๋จผ์ € ๋งˆํฌ์—…์€ ๊ฐ„๋‹จํ•ฉ๋‹ˆ๋‹ค. ์–ด์ฐจํ”ผ :after ๋ฅผ ์‚ฌ์šฉํ•  ๊บผ๋ผ ๋ณ„๋‹ค๋ฅธ ํƒœ๊ทธ๊ฐ€ ์ถ”๊ฐ€๋กœ ํ•„์š”ํ•˜์ง„ ์•Š์Šต๋‹ˆ๋‹ค.

๋จผ์ € a:after ์— absolute ์†์„ฑ์„ ์ฃผ์–ด a ๋ณด๋‹ค ์•„๋ž˜์— ์œ„์น˜์‹œ์ผœ์ค๋‹ˆ๋‹ค. 

๊ทธ๋ฆฌ๊ณ  transform์˜ scale์„ ์‚ฌ์šฉ ํ•˜๋Š”๊ฒŒ ํ•ต์‹ฌ์ž…๋‹ˆ๋‹ค. 

scale ์†์„ฑ์€ ํ˜„์žฌ์˜ element๋ฅผ ํ™•๋Œ€ ์‹œ์ผœ์ฃผ๋Š” ๊ธฐ๋Šฅ์„ ํ•ฉ๋‹ˆ๋‹ค. 

.wrap {
	padding: 15px;
}
.wrap > a {
	position: relative;
	display:inline-block; 
	color: #000;
	text-decoration: none; 
	font-weight: bold;
	margin-right: 15px;
}

.wrap > a:after {
	content: "";
	position: absolute;
	width: 100%;
	height: 8px;
	bottom: -6px;
	left: 0;
	background-color: #dc6b6b;
	visibility: hidden;
	transform: scaleX(0);
	transition: all 0.3s ease-in-out;
}

์œ„์˜ ์ฝ”๋“œ๋ฅผ ๋ณด๋ฉด a:after ์˜ width๊ฐ€ 100%์ง€๋งŒ, scaleX์˜ ๊ฐ’์ด 0 ์ด๋ฏ€๋กœ ๋ณด์ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค. 

๊ฐ€๋กœ๋กœ ์ชผ๊ทธ๋ผ๋“ค์—ˆ๋‹ค๊ณ  ์ƒ๊ฐํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค. 

 

๊ทธ๋Ÿผ a๋ฅผ hover ํ–ˆ์„๋•Œ ์ขŒ์šฐ๋กœ ๋Š˜๋ ค์ฃผ๋ ค๋ฉด, ์›๋ž˜ ์‚ฌ์ด์ฆˆ์ธ 100%๋กœ ๋Œ๋ ค์ฃผ๋ฉด ๋˜๊ธฐ ๋•Œ๋ฌธ์— scale ๊ฐ’์„ 1๋กœ ํ•ด์ฃผ๋ฉด ๋ฉ๋‹ˆ๋‹ค. 

๊ทธ๋Ÿฌ๋ฉด ์›๋ž˜ 100%์˜ ์‚ฌ์ด์ฆˆ๋กœ ๋Œ์•„์˜ต๋‹ˆ๋‹ค. 

 

.wrap > a:hover {
	color: #dc6b6b;
}

.wrap > a:hover:after {
	visibility: visible;
	transform: scaleX(1);
}

 

์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ๋์ž…๋‹ˆ๋‹ค. 

ํ•ด๋‹น ๋ชจ์…˜์€ underline ์ฒ˜๋Ÿผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ ์™ธ์—๋„ ๋‹ค์–‘ํ•˜๊ฒŒ ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•ด ๋ณด์ž…๋‹ˆ๋‹ค. 

 

์ฐธ๊ณ ๋กœ scale ์€ ํ™•์ธํ•ด ๋ณด๋‹ˆ IE9 ์ดํ•˜๋Š” ๋™์ž‘์ด ์•ˆ๋˜๋”๋ผ๊ณ ์š”. ์ฐธ๊ณ ํ•˜์„ธ์š”!

๋ฐ˜์‘ํ˜•