[220509 / Day 5] CSS ํญ ๋ง๋ค์ด๋ณด๊ธฐ, transform, transition, box-shadow
1. ๊ธ์๋ ๊ณต๊ฐ์ ๊ฐ์ด๋ฐ ์ ๋ ฌํ๊ธฐ
box-sizing 328p
boder: border+padding ๊ฐ
๋ธ๋ก ์์๋ค์ text-align ์ผ๋ก ์ ๋ง์ถฐ์ง
2. tab ๋ง๋ค์ด๋ณด๊ธฐ
๊ฒน์น๊ฒ ํ๋ ค๋ฉด position:absolute ํด์ค์ผํจ
๋ณดํต dl dt ๋ง์ด ์ฐ์ง๋ง ๊ฐ๋จํ๋ฉด div ๋ก
์ด๋ ๊ฒ
<div class="tab-box">
<dl class="tab">
<dt>1</dt>
<dd><img src="img/tab1/1.jpg" alt=""></dd>
<dt>2</dt>
<dd><img src="img/tab1/2.jpg" alt=""></dd>
<dt>3</dt>
<dd><img src="img/tab1/3.jpg" alt=""></dd>
</dl>
</div>
์ด๋ฏธ์ง๋ ์ธ๋ผ์ธ์ด์ง๋ง ์์ธ๋ก ๋์ด๊ฐ ์ง์ ๊ฐ๋ฅ
3. 02.html ํ์ผ ํ๊ธฐ
.depth1>a ์ด๊ฑด ์์์์ a ๋ฅผ ๋ถ๋ฅด๊ฒ ๋ค๋ ๋ป
.depth2 a ์ด๊ฑด ํ์์์ a ๋ฅผ ๋ถ๋ฅด๊ฒ ๋ค๋ ๋ป
.depth1:hover>a ์ด๋ ๊ฒ ํด์ผ ํ์์์์ ์ปค์๋ฅผ ๋๋ ์ ์ฒด๋ก ์ ํ๋จ
.depth2 a:hover ์ด๊ฑด li ์ ํฌ๊ธฐ ๋๊ฐ๊ธฐ ๋๋ฌธ์ ์ด๋ ๊ฒ li ์ ์ ์ฉํด๋ ๋จ
ํน์ ๋์ด๊ฐ ๋ค์ด๊ฐ์ผ ํ๋ฉด ํ์์ ๊ผญ ๋์ด ๋ถ์ฌํด์ผํจ 200px
.depth1:hover>.depth2{display: block;} ๋2๋ฅผ ๊ธฐ๋ณธ none์ผ๋ก ํ๊ณ ๋1์ ํธ๋ฒํ๋ฉด ๋2๋ฅผ ๋ธ๋ก์ฒ๋ฆฌํ๋ค๋ ๋ป
4. 03.html ํ์ผ ํ๊ธฐ
๊ธ์์๊ฐ ๋ง์ด ๋ค๋ฅธ ํญ์ ๋ง๋ค๋ฉด ๋ง์ง์ ์ฃผ๋ฉด ๊ณต๊ฐ์ ์ฌ๋ฐฑ์ด ๋ฌ๋ผ์ ๋ง์ง ์์
04.html ์คํ์ผ ์์กํ ๋ค์!
๊ฐ์ ์๋ฆฌ์ ๋ํ๋๊ฒ ํ๋ ค๋ฉด gnb์ ํฌ์ง์ ๋ ๋ฌํฐ๋ธ
ํ์ ๋ฉ๋ด์ ํฌ์ง์ ์ก์๋ฃจํธ๋ฅผ ์ฃผ๋ฉด ๊ฒน์ณ์ง ๊ทธ๋์ ์ ์ฒด ๋ฉ๋ด์์ ํฌ์ง์ ๋ ๋ฌํฐ๋ธ๋ฅผ ์ค์ผ ํจ
.gnb .depth1 ์ position: relative ๋ฅผ ๋ฃ์ด๋ ๋์ง๋ง ๊ทธ๋ฌ๋ฉด ๊ฐ ๋ฉ๋ด ๊ธฐ์ค์ผ๋ก ์์น๊ฐ ์กํ๊ธฐ ๋๋ฌธ์
.gnb ์ position: relative ๋ฅผ ์ก์์ผ ์ ์ฒด ๋ฉ๋ด ๊ธฐ์ค์ผ๋ก ์์น๊ฐ ์กํ
5. transform, transition
transform 449p : ๊ฐ์ ์ค์ ์ด๋ฏธ์ง ๊ฐ์ ๊ฒ์ ํฌ๊ธฐ ์กฐ์ , ์์น ์กฐ์ ๋ฑ
๋ณํ๋ ๊ฒ
transition
.box2:hover>div{transform: translate(50px,50px); transition-property: transform; transition-duration: 1s;}
=> 1์ด ๊ธฐ๋ค๋ ธ๋ค๊ฐ ์์ง์ด๋ผ๋ ๋ป
๋ณํ๋ ์ค๊ฐ๋จ๊ณ๋ฅผ ๋ณด์ฌ์ฃผ๋ ๊ฒ, ์์ฑ๋ช ์ ์ง์ ํด์ผ ํจ transition-property: background; ๋์์ ์ง์ ํด์ค์ผ ์ํ๋๋๋ก ๋ณํจ ๋์๋ ์ง์ ํ๊ณ ๊ฐ ๋ํ๋ฆฌ์ผ์ดํธ๋ ๋๋ ์ด ๋ฑ์ ๊ฐ๋ ์ง์ ํด์ฃผ์ด์ผ ํจ ํ๋ ์ง์ ํ๋ฉด ๋ ๊ฐ ์ ์ฒด๊ฐ ๋ณํ๊ณ , ๋ ๊ฐ์ 1s, 2s ์ด๋ ๊ฒ ์ง์ ํ๋ฉด ๊ฐ๊ฐ ์์ฑ๊ฐ์ด ์ ์ฉ๋จ
์: transition-property: background width; transition-duration: 1s; => ์ด๋ ๊ฒ ํ๋ฉด
timing-function ํด์ฃผ๋ฉด ์งํ์ํฉ๊ณผ ํ์์ ๋ฐ๋ผ ๋ณํ๋ ๊ณผ์ ์ ๋ณด์ฌ์ค cubic-bezier(.17,.67,.83,.67) ๋ผ๋ ๊ฑธ ์ ์ฉํ๋ฉด ํตํต ํ๋ ๊ฒ์ ์ฐ์ถ ๊ฐ๋ฅ
๋ฐ์ค๋ณด๋ค ์ปจํ ์ธ ๋์ด๊ฐ๋ ๊ฑธ ์๋ณด์ด๊ฒ ํ๊ณ ์ถ์ผ๋ฉด overflow: hidden; ์ค์ ํด์ผ ํจ
transition: all์ ํ๊ฑฐ๋ property ๊ฐ์ ์ง์ ํ์ง ์๊ฑฐ๋ all์ ์ง์ ํ์ง ์์ผ๋ฉด ์์์ ๋ชจ๋ ์์ฑ์ด ํธ๋ ์ง์ ๋์์ด ๋จ
transform-origin
๋ณํ ๊ธฐ์ค์ ์ ์๋ ์ค๊ฐ, ์ด ์์ฑ์ ๊ธฐ์ค์ ์ค์ ํ๋ ๊ฒ
6. border-radius ๋ชจ์๋ฆฌ๋ฅผ ๋ฅ๊ธ๊ฒ
div:nth-of-type(4) {border-radius: 80px 80px 0 0}
=> ์ผ์ชฝ ์๋จ๋ถํฐ ์์น ์ก์
div:nth-of-type(3) {border-radius: 50px 30px;}
=> ๋๊ฐ์ ์ผ๋ก ์ผ์ชฝ ์๋จ, ์ค๋ฅธ์ชฝ ํ๋จ์ด 50px, ์ค๋ฅธ์ชฝ ์๋จ, ์ผ์ชฝ ํ๋จ์ด 30px
์ ์ฒด ๋์ด์ ๋ฐ์ด ๋ฐ์ง๋ฆ? / ์ด๋ฏธ์ง ํ์ผ์ ๋ฌด์กฐ๊ฑด overflow:hidden ์ฒ๋ฆฌํด์ผ ๋ฅ๊ธ๊ฒ ๋ณด์
7. ๊ทธ๋ฆผ์ ์ฒ๋ฆฌ box-shadow 312p
์์ฑ์ ๋ฐ๋ก ์ฐ์ง ์๊ณ ๊ฐ๋ง ๋์ดํ๋ฉด ๋จ
๋ฒ์ง์ ๋๋ ์ํด๋ ์๊ด ์์
inset ์ ์์ชฝ ๊ธฐ๋ณธ์ outset
์์์ rgba ๋ง์ด ์
ํ ์คํธ๋ inset ์ ์ฉ ์๋จ
๋ค์ ํ์ธํ ๊ฒ: ์ด๋ฏธ์ง ๋ฉํฐ๋ก ๊น๊ธฐ?????? 270p ๋ค์ ํ์ธ, background ์์ฑ๊ฐ ๋ฃ๋ ๋ฒ ํ์ธ