2021-05-14 (32์ผ์ฐจ) ํฐ ์ด๋ฏธ์ง ํ๋, ์ด๋ฏธ์ง ๋ถ๊ฐ์ค๋ช ๋ฃ๊ธฐ, hover์ ์ด๋ฏธ์ง ์ด๋์ด ํจ๊ณผ, ์ด๋ฏธ์ง ํ๋ ํจ๊ณผ transform:scale, ํจ๊ณผ์ ์๊ฐ๊ฑธ๊ธฐ transition, css ํน์ํจ๊ณผ,
141๊ฐ~144๊ฐ
- ํฐ ์ด๋ฏธ์ง ํ๋๋ง ๋ฃ๊ธฐ
emmet : section.section.section-0>div.con>div.img-box>img
- ์ด๋ฏธ์ง ๋ฆฌ์คํธ์ ์ด๋ฏธ์ง์ ๋ถ๊ฐ์ค๋ช ๋ฃ๋ ๋ฐฉ๋ฒ (์ํ๋ช , ๋ ์ง, ์ ์๊ธฐ๊ฐ ๋ฑ)
emmet : section.section.section-1>div.con>div.work-list-box>ul.inline-grid>li
>div>(div.img-box>img)+div.work-name{์ํ๋ช
}+div.work-date-period{๋ ์ง, ์ ์๊ธฐ๊ฐ}
.work-list-box > ul > li > div > (.work-name, .work-date-period)
{margin-top:5px; text-align:center;}
- ๋ง์ฐ์ค ์ฌ๋ฆฌ๋ฉด ์ด๋ฏธ์ง๊ฐ ์ด๋์์ง๋ ๋ฐฉ๋ฒ
1) div.img-box์ ์์์ด์ img์ ํ์ธ 'div.bg' 1๊ฐ ๋ฃ์ด์ฃผ๊ธฐ
div.img-box>div.bg+img
2) ์์ ๋ฃ์ div.bg์ absolute๊ฐ์ ์ค์ img์์ ์์นํ๊ธฐ
.work-list-box > ul > li > div > .img-box > .bg
{background-color:rgba(0,0,0,0); width:100%; height:100%; position:absolute; top:0; left:0;}
3) ์ ๋ นdiv๋ฅผ .img-box์ ์ํ๊ฒ ํ๊ธฐ
.work-list-box > ul > li > div > .img-box
{position:relative;}
4) ๊ฐ๊ฐ li์ hover์ ์ด๋ฏธ์ง๊ฐ ์ด๋ก๊ฒ ๋ณํ๊ฒ ํ๊ธฐ
.work-list-box > ul > li:hover > div > .img-box > .bg
{background-color:rgba(0,0,0,0.7);}
5) ์ด๋ก๊ฒ ๋ณํํ๋ ์๊ฐ ๊ฑธ๊ธฐ (hover์ ๊ฑธ์ผ๋ฉด ๋ง์ฐ์ค ์ฌ๋ฆด ๋๋ง ์ ์ฉ๋จ)
.work-list-box > ul > li > div > .img-box > .bg์๋ค๊ฐ {transition:background-color 1s;} ์ถ๊ฐํ๊ธฐ
- ๋ง์ฐ์ค ์ฌ๋ฆฌ๋ฉด ์ด๋ฏธ์ง๊ฐ ํ๋๋๋ ๋ฐฉ๋ฒ
1) ์ด๋ฏธ์ง๋ฅผ ์ปค์ง๊ฒ ํ๊ธฐ
{width:140%;}๊ฐ์ ์ฃผ๋ฉด,์ปค์ง๊ธด ํ์ง๋ง ํ ์ชฝ์ผ๋ก๋ง ์ปค์ง
{transform:scale(1.4);}๊ฐ์ ์ค์ผ, ์ค์ฌ์ถ์ ๊ธฐ์ค์ผ๋ก ํ์ฌ ์ปค์ง
↓
.work-list-box > ul > li:hover > div >.img-box > img
{transform:scale(1.4);}
ใด ๋ฌธ์ ์ : ํฌ๊ธฐ๊ฐ ์ปค์ง๋ฉด์ .img-box๋ฅผ ๋์ด๊ฐ ์ฌ๋ฐฑ์ ์นจ๋ฒํจ
ใด ํด๊ฒฐ์ฑ : .img-box์๋ค๊ฐ ์นจ๋ฒํ๋ ๋ฒ์๋ฅผ ์จ๊ธฐ๋ผ๊ณ ๋ช ๋ นํด์ผํจ
2) ์ฌ๋ฐฑ์ ์นจ๋ฒํ๋ ์ด๋ฏธ์ง๋ฅผ ๊ฐ๋ ค์ฃผ๊ธฐ
.work-list-box > ul > li > div > .img-box {overflow:hidden} ์ถ๊ฐ
3) ์ด๋ฏธ์ง๊ฐ ์ปค์ง๋ ์๊ฐ ๊ฑธ๊ธฐ (์ฌ๋ฆด ๋๋ง์ด ์๋, ๋ ๋๋ ๊ฐ์ด ์ ์ฉํ๊ธฐ ์ํด hover ์ฌ์ฉX)
.work-list-box > ul > li > div > .img-box > img
{transition:transform 1s;}
- ์ด๋ฏธ์ง์ ์ด๋ ํจ๊ณผ์ ํ๋ํจ๊ณผ ๋์์ ์คฌ์ ๋ ์ด๋ ํจ๊ณผ๊ฐ ์ ๋ณด์ด๋ ์ด์
absolute๊ฐ์ ์ค ์ด๋ ํจ๊ณผ๊ฐ z์ถ ๊ฐ์ฅ ์์ ์์นํ๊ธฐ ๋๋ฌธ์ ๋ณด์ฌ์ผ ํ๋ ๊ฒ ์ ์์ด์ง๋ง,
transform์ ํน์ํจ๊ณผ ๋๋ฌธ์ ํ๋ํจ๊ณผ๊ฐ z์ถ ๊ฐ์ฅ ์์ผ๋ก ๋์ค๊ฒ ๋จ
- z-index (์ ๋ น๋ค๊ฐ์ ์ฐ์ด)
๋ณด์ด๋ ์ฐ์ ์์๋ฅผ ์ ํด์ค ์ ์๋ ๊ฐ
ex){z-index:1;}
- ์ด๋ฏธ์ง์ ์ด๋ ํจ๊ณผ์ ํ๋ํจ๊ณผ ๋์์ ์ฃผ๋ ๋ฐฉ๋ฒ
1) ๋ค์ ์์นํ๋ ์ด๋ ํจ๊ณผ์๊ฒ z์ถ ์ฐ์ ์์๊ฐ ์ฃผ๊ธฐ
.work-list-box > ul > li > div > img-box > .bg {z-index:1;}
2) ์์ ์์นํ๋ ํ๋ํจ๊ณผ๋ฅผ ๋ค์ชฝ์ผ๋ก ์์นํ๊ฒ ํ๊ธฐ
.work-list-box > ul > li >div > .img-box > img {z-index:-1;}
ใด ํ์ง๋ง, ๋ณํ ์๋ ์ด์ : z-index๋ absolute, relative์์๋ง ์๋ํจ (position:static์์๋ ์๋X)
ใด ํด๊ฒฐ์ฑ : {position:relative;}๊ฐ ์ถ๊ฐํ๊ธฐ
- ์ด๋ฏธ์ง์ ๋ง์ฐ์ค ์ฌ๋ฆฌ๋ฉด ํ ์คํธ ๋ํ๋๋ ๋ฐฉ๋ฒ
1) div.img-box์ ์์์ด์ div.bg์ ๋์์ด๊ณ , img์ ํ์ธ 'div.text{๋ด์ฉ}' ๋ง๋ค์ด์ฃผ๊ธฐ
2) absolute๊ฐ(์ ๋ นํ)๋ฅผ ์ค์ ๊ฐ์ฅ ์์ ์์นํ๊ฒ ํ๊ธฐ
.work-list-box > ul > li > div > .img-box > .text
{position:absolute;} =์ ๋ น๊ฐ์ ์ํด
{top:50%; left:50%; transform:translateX(-50%) translateY(-50%);} =์ ๋ น๊ฐ ๊ฐ์ด๋ฐ์ ๋ ฌ์ ์ํด
{color:white; border:3px solid white; border-radius:10px; padding:10px; font-weight:bold;} =๊พธ๋ฏธ๊ธฐ ์ํด
{transition:opacity 1s;} = ํ ์คํธ ๋ํ๋๋ ์๊ฐ ๊ฑธ๊ธฐ ์ํด
3) ํ ์คํธ ํ์์๋ ์ ๋ณด์ด๊ฒ ํ๊ธฐ
{opacity:0;}์ฃผ๊ธฐ
โป opacity์ ๊ธฐ๋ณธ๊ฐ : 1
4) ์ด๋ฏธ์ง์ ๋ง์ฐ์ค hover์ ํ ์คํธ ๋ํ๋๊ฒ ํ๊ธฐ
.work-list-box > ul > li:hover > div > .img-box > .text
{opacity:1;}