๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
CSS

CSS ์• ๋‹ˆ๋ฉ”์ด์…˜ ๋งŒ๋“ค๊ธฐ : ๊ตด๋Ÿฌ๊ฐ€๋Š” ๋„ค๋ชจ

by ์ฝ”ํŒŒ์นด 2022. 8. 29.
728x90

CSS ์• ๋‹ˆ๋ฉ”์ด์…˜ : ๊ตด๋Ÿฌ๊ฐ€๋Š” ๋‹จ๋ฌด์ง€

์˜ค๋Š˜์€ CSS์˜ ๋‹ค์–‘ํ•œ ์†์„ฑ์„ ์ด์šฉํ•˜์—ฌ ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ๋งŒ๋“ค์–ด ๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์ž‘์—…ํ•ด๋ณผ ์• ๋‹ˆ๋ฉ”์ด์…˜์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.


1. HTML ์†Œ์Šค

<div class="box"></div>

๋‹จ๋ฌด์ง€์˜ ๊ทธ๋ฆผ์ž๋Š” ๊ฐ€์ƒ์š”์†Œ๋กœ ์ž‘์—…ํ•ด์ค„ ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์—, HTML ์†Œ์Šค๋Š” box ํด๋ž˜์Šค๋ฅผ ๊ฐ€์ง„ div ๋ฐ•์Šค ํ•˜๋‚˜๋กœ ์ถฉ๋ถ„ํ•ฉ๋‹ˆ๋‹ค.

2. CSS ์†Œ์Šค

body {
    height: 100vh;
    background-image: linear-gradient(to top, skyblue, pink); 
}
      
.box {
    width: 50px;
    height: 50px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}
      
.box::before {
    content: '';
    width: 50px;
    height: 5px;
    background: #000;
    position: absolute;
    top: 58px;
    left: 0;
    border-radius: 50%;
    opacity: 0.2;
    animation: shadow 0.6s linear infinite;
}
      
@keyframes shadow {
    0% {
        transform: scale(1, 1)
    }
    50% {
        transform: scale(1.2, 1)
    }
    100% {
        transform: scale(1,1)
    }
}
      
.box::after {
    content: '';
    background: yellow;
    width: 50px;
    height: 50px;
    position: absolute;
    left: 0;
    top: 0;
    border-radius: 3px;
    animation: load 0.6s linear infinite;
}
      
@keyframes load {
    17% {
        border-bottom-right-radius: 3px;
    }
    25% {
        transform: translatey(9px) rotate(22.5deg);
    }
    50% {
        transform: translatey(18px) scale(1, 0.9) rotate(45deg);
        border-bottom-right-radius: 40px;
    }
    75% {
        transform: translatey(9px) rotate(67.5deg);
    }
    100% {
        transform: translatey(0px) rotate(90deg);
    }
}

gradient์€ '๊ธฐ์šธ์–ด์ง'์˜ ์ •๋„๋‚˜, ๊ธฐ์˜จ์ด๋‚˜ ์••๋ ฅ์˜ '๋ณ€ํ™” ๋น„์œจ'์„ ๋œปํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰ css์—์„œ gradient๋Š” ํ•œ ๋ฐฉํ–ฅ์—์„œ ๋‹ค๋ฅธ ๋ฐฉํ–ฅ์œผ๋กœ ์ƒ‰์ด ์ ์ฐจ ํ๋ ค์ง€๊ฑฐ๋‚˜, ์ƒ‰์ด ๋ณ€ํ™”ํ•˜๋Š” ํšจ๊ณผ๋ฅผ ์ค„ ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ์†์„ฑ์ž…๋‹ˆ๋‹ค. ๋ฐฑ๊ทธ๋ผ์šด๋“œ์— ์ค€ linear-gradient ์†์„ฑ์€ ์ƒ๋‹จ์„ ํ–ฅํ•ด(to top), skyblue์—์„œ pink๋กœ ์ƒ‰์ด ๋ณ€ํ™”ํ•œ๋‹ค๋Š” ์˜๋ฏธ์ž…๋‹ˆ๋‹ค.

์œ„์˜ HTML, CSS ์†Œ์Šค๋ฅผ ํ•ฉ์น˜๋ฉด ์• ๋‹ˆ๋ฉ”์ด์…˜์ด ์™„์„ฑ๋ฉ๋‹ˆ๋‹ค. ๊ฐ„๋‹จํ•˜์ฃ ?

728x90

๋Œ“๊ธ€

๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๐Ÿฆ™

CSS
๊ด‘๊ณ  ์ค€๋น„์ค‘