카테고리 없음

[3.25] html/ 자바스크립트- 움직이는 이미지 만들기

문앵 2021. 3. 25. 15:38

경일아카데미 홈페이지 메인에 움직이는 이미지는 구현하기 위해서,

우선 html을 작성한다.

 

5개의 이미지와 5개의 버튼을 만들고 css를 따로 작성한다.

대략적인 설정을 먼저 생각해보면,

 

1. 5개의 이미지를 한 구역에 겹쳐놓고, 사진을 모두 안보이게 처리한다.

2. 이미지에 각각 class값을 줘서 원하면 사진만 보이도록 한다.

3. 각각의 사진이 넘어갈 때 부드러운 화면으로 넘어가도록하기 위해서

   애니메이션과 opacity(투명도)를 이용한다.

 

----------------------------------------------------------------------------------------------

<!--css 설정하기--> 1

 

*margin0;                       

    padding0;}                     

 

ul,li {list-stylenone;}

 

a{  text-decorationnone; }         

img{ displayblock;              /* 이미지를 블록처리하고 line-height처리하면

       line-height0 }             빈공간 없이 일렬로 사진을 쭉 나열할 수 있다.*/

 

#banner{

    position:absolute;             /* 사진을 모두 합치고 시작점을 적당한 위치로 통일하기 위해서

    top300px; }                       배너에도 엡솔루트를 준다.*/

 

#banner>ul>li {                    /* position-absolute를 두번 주게 되면 하위 엘리먼트가

    positionabsolute;             상위 엘리먼트를 따라가게 됨. 따라서 사진(li)의 상위

    top0px;                          엘리먼트인 배너에다가 엡솔루트300을 준 상태에서

    displaynone; }                  자신한테 absolute top:0을 주면 사진 각각의 시작점이 배너에 고정됨.*/

                                         /* display: none; 안보임 처리*/

 

------------------------------------------------------------------------------------------------------------------

<!--css 설정하기-->2, 3

ㄱ.  html에 있는 <li>에 class값을 준다.

<div id="banner">

        <ul class="banner1">

            <li class="fadein"><img src="./image1.png"> </li>

            <li class="fadein"><img src="./image2.png"> </li>

            <li class="fadein"><img src="./image3.png"> </li>

            <li class="fadein"><img src="./image4.png"> </li>

            <li class="fadein"><img src="./image5.png"> </li>

        </ul>

    </div>

 

ㄴ. 그 class값을 가지고 애니메이션 효과를 준다.

 

#bannerulli.fadein{               /* 3초에 걸쳐서 애니메이션 효과를 주겠다*/

    animation: fadein 3s; }            /*animation=움직임*/

 

#banner>ul>li.on{                     /* class 값이 on인 <li>만 display:block 처리를 하겠다.

    displayblock; }                       (보이게 하겠다)*/

 

@keyframes fadein {                  /* opacity가 0일때는 완전히 사라지고

    from{opacity0;                      opacity가 1일때는 완전히 보이도록 한다.

    to{ opacity1; } }                      이때 애니메이션이 3초이므로 3초에 걸쳐서 실행한다.*/

    

 

반응형