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

[CSS] ๊ฑท๋Š” ํ˜ธ๋ฐ• ์• ๋‹ˆ๋ฉ”์ด์…˜ ๋งŒ๋“ค๊ธฐ๐ŸŽƒ

by ์ฝ”๋”ฉ๊ณต์ฑ… 2022. 9. 8.
๋ฐ˜์‘ํ˜•

CSS ์• ๋‹ˆ๋ฉ”์ด์…˜ : ๊ฑท๋Š” ํ˜ธ๋ฐ•

์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” ํ˜ธ๋ฐ•์ด ๊ฑธ์–ด๊ฐ€๋Š” ์• ๋‹ˆ๋ฉ”์ด์…˜์„ CSS๋ฅผ ํ†ตํ•ด ๋งŒ๋“ค์–ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

HTML ์†Œ์Šค

<div class="sample">
    <h3><span></span><em class="sr-only"></em></h3>
    <div class="timing step">
        <div class="stepbox"></div>
        <span class="stepBtn">
            <a href="#" class="stepBtnStart">Start</a>
            <a href="#" class="stepBtnStop">Stop</a>
        </span>
    </div>
</div>

CSS ์†Œ์Šค

ani1.jpg ํŒŒ์ผ์€ ํฌํ† ์ƒต์—์„œ ํ˜ธ๋ฐ•์ด ๊ฑท๋Š” ์žฅ๋ฉด 32์žฅ์„ ๊ฐ€๋กœ๋กœ ์ด์–ด๋ถ™์—ฌ ๋งŒ๋“  ์ด๋ฏธ์ง€ ํŒŒ์ผ์ด๋ฉฐ width ๊ฐ’์€ 25600px์ž…๋‹ˆ๋‹ค.

์ด๋ ‡๊ฒŒ ๊ฐ€๋กœ๋กœ ์ด์–ด๋ถ™์ธ ์ด๋ฏธ์ง€ ํŒŒ์ผ์„ ๋จผ์ € ์ค€๋น„ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ด๋ฏธ์ง€ ํŒŒ์ผ์„ ์• ๋‹ˆ๋ฉ”์ด์…˜ ์ ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

.step {
    height: 700px;
    background: #3b0643;
    position: relative;
}
.step .stepbox {
    width: 800px; height: 600px;
    background: url(https://kde66034.github.io/coding/animation/img/ani1.jpg);
    border-radius: 0;
    position: absolute;
    left: 50%; top: 50%;
    transform: translate(-50%, -50%);
    animation: ani 1s steps(32, start) infinite;
    /* ani 1s steps(ํ”„๋ ˆ์ž„์ˆ˜(์ด๋ฏธ์ง€ ๊ฐœ์ˆ˜), start) infinite; */
}
.step .stepbox.start {
    animation-play-state: running;
}
.step .stepbox.stop {
    animation-play-state: paused;
}
@keyframes ani {
    0% {background-position: 0 0;}
    100% {background-position: -25600px 0;}
    /* 100% {background-position: ์ด์–ด๋ถ™์—ฌ ๋งŒ๋“  ์ด๋ฏธ์ง€ ํŒŒ์ผ์˜ width ๊ฐ’ (px) 0;} */
}
.stepBtn {
    position: absolute; left: 15px; top: 20px;
}
.stepBtn a {
    background: #e16162; color: #fff;
    padding: 10px;
    margin: 3px;
    border-radius: 3px;
}

์ฝ”๋“œํŽœ ๊ฒฐ๊ณผ

๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€


Reference Book

JavaScript
HTML
CSS
๊ด‘๊ณ  ์ค€๋น„์ค‘์ž…๋‹ˆ๋‹ค.