<!DOCTYPE html>
<html lang="ko">
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>CSS 07</title>
        <style type="text/css">
            /**/
            div.box {
                background-color:red;
                width:200px;
                height:200px;
                color:white;
                /*transition-property - 전환 효과를 적용할 대상 속성을 지정*/
                /*속성값*/
                /*none - 전환 효과를 지정하지 않음*/
                /*all - 모든 속성을 전환 효과 대상으로 지정*/
                /*원하는 속성만 지정할려면 , 기호로 구분하여 복수의 속성값을 지정*/
                transition-property:background-color, color, width; /*변환 효과를 배경색, 글자색, 넓이로 지정*/

                /*transition-duration - 전환 효과의 지속 시간을 설정 (속상값으로는 초 단위로 지정)*/
                /*property에서 지정한 순서대로 지속 시간을 따로 지정가능*/
                transition-duration:5s, 1s, 3s; /*배경을5초, 글자색을 1초, 넓이를 3초의 시간동은 전환*/

                /*transition-delay - 전환 효과의 발생을 지연 설정 (속상값으로는 초 단위로 지정)*/
                /*property에서 지정한 순서대로 지속 시간을 따로 지정가능*/
                transition-delay:1s, 2s, 10s; /*배경을 1초, 글자색을 2초, 넓이를 10초 후에 전환시작*/
            }

            div.box:hover {
                background-color:blue;  /*마우스를 올리면 배경을 파랑으로 전환*/
                color:green;            /*마우스를 올리면 글자색을 초록으로 전환*/
                width:300px               /*마우스를 올리면 넓이를 300px로 전환*/
            }



            /*transition-timing-function - 전환 효과의 진행 속도를 설정*/
            /*cubic-bezier(p1, p2, p3, p4) - 해당 속성은 값을 구해야 하기 때문에 나중에 공부하자 */
            div.line {
                padding:10px;
                color:white;
                border:1px solid black;
                width:600px
            }
           
            div.line > div.bar {
                background-color:blue;
                margin-bottom:10px;
                width:200px;
                transition-property: width;
                transition-duration: 1s;
                transition-delay:0.5s;
            }

            div.line:hover > div{
                width:400px;
            }

            div.line > div.bar:nth-child(1){
            transition-timing-function:linear;      /*처음 속도와 마지막 속도가 일정*/
            }
            div.line > div.bar:nth-child(2){
            transition-timing-function:ease;        /*처음에는 속도가 점점 빨라지다가 중간부터 느려짐*/
            }
            div.line > div.bar:nth-child(3){
            transition-timing-function:ease-in      /*처음에는 속도가 느리지만 완료될 때가지 점점 빨라짐*/
            }
            div.line > div.bar:nth-child(4){
            transition-timing-function:ease-out;    /*처음에는 속도가 빠르지만 완료될 때까지 점점 느려짐*/
            }
            div.line > div.bar:nth-child(5){
            transition-timing-function:ease-in-out; /*처음에는 속도가 느리지만 점점 빨라지다가 다시 점점 느려짐*/
            }

            /*transition 속성 역시 한번에 설정이 가능하다.*/
            /*transition:property duration timing-function delay 순서대로 작성하면 된다.*/
           
            div.all {
                background-color:green;
                width:200px;
                transition:width 1.5s linear 3.5s; /*"넓이"를 "1.5초 후"에 "일정한 속도"로 "3.5초에 걸쳐서" 변환한다.*/
               
            }

                     
        </style>
    </head>
    <body>
       
        <div class="box">전환효과</div> <br>

        <div class="line">
            <div class="bar">속성값 : linear</div>
            <div class="bar">속성값 : ease</div>
            <div class="bar">속성값 : ease-in</div>
            <div class="bar">속성값 : ease-out</div>
            <div class="bar">속성값 : ease-in-out</div>

            <div class="all">한번에 지정</div>
        </div>
       
    </body>
</html>
CSS 07
전환효과

속성값 : linear
속성값 : ease
속성값 : ease-in
속성값 : ease-out
속성값 : ease-in-out
한번에 지정

+ Recent posts