본문 바로가기
IT/웹코딩기초

[CSS] Transition Animation 광주시 마우스 닿으면 위로 올라가며 바뀌는 로고 애니메이션 효과/HTMl 파일 공유

by 복자정 2023. 5. 12.

[CSS] Transition Animation 광주시 마우스 닿으면 전환되는 애니메이션 효과 

 

오늘은 경기광주시청 홈페이지 내에 있는 애니메이션 전환 효과를 알려드리고자 해요.

들어간 효과가 어떤 것인지 살펴볼까요? 

 

 

위 영상에서 보이는 것처럼

1. 박스에 닿을 때 박스가 올라가는 애니메이션 효과

2. 박스에 닿을 때  박스 색이 바뀌는 효과

3. 박스에 닿을 때 로고와 텍스트가 올라가고 내려가는 전환 효과

4. 그림자 효과 

 

등이 있을 것 같아요.

 

그럼 순서대로 정리해보도록 해요!


하나씩 하나씩 기본 구조를 먼저 작성해보고

스타일을 적용해볼게요~

 

1. body 기본구조 타이틀 적기 

<body>
    
    <h2 id="title">광주시에 오신 것을 환영합니다.</h2>

</body>

 

 

2. 폰트 연결 

딱 봐도 지마켓 산스 폰트길래 폰트링크를 가져와주었어요.

          /*G마켓 폰트 CDN 연결*/
            @font-face {
                font-family: 'GmarketSansMedium';
                src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/GmarketSansMedium.woff') format('woff');
                font-weight: normal;
                font-style: normal;
            }

 

3. 모든 요소 공통사항 스타일 적용

              * { /*모든 요소 공통사항*/
                font-family: 'GmarketSansMedium';
                box-sizing: border-box;
                margin:0;
            }

 

4. 타이틀 스타일 적용

           #title {
                font-size: 2em; /*영문 M 글자 기준으로 2배 크기임. 글자 기본크기 16px*2 = 32px*/
                margin:1em 0;
                text-align: center;
            }

 

5. 바디 텍스트 먼저 지정

희망도시 행복광주는 일단 h3태그로 일단 적어만 두고 포토샵에서 그래픽으로 만들어 이미지를 삽입시킬 것임. 

<body>
    
    <h2 id="title">광주시에 오신 것을 환영합니다.</h2>

    <div id="box">

        <h3>희망도시 행복광주</h3>

        <div id="text">
            <h3>광주시청</h3> 
            <p>광주시 대표포털</p>
        </div>

    </div>

</body>

 

6. 바디 색깔 주기 

           body {  
                background: #fffbee;
            }


7. 박스 스타일 줄 것들 미리 지정해놓기 

            #box {  }
            #box > h3 {  }
            #text {  }
            #text > h3 {  }
            #text > p  {  }

8. 바깥쪽 전체박스에 스타일 주기 

           #box { /*바깥쪽 전체 박스*/
                width: 400px;
                background: #fff;
                padding:2em;
                border-radius: 1em;
                margin: auto;
                box-shadow: 0 1em 1em rgba(0,0,0,.2);
             }

 

9. 광주 로고 포토샵에서 간단히 만들고  h2 부분을 없애주고 img src 태그로 바꾸어 넣어주기. 

<body>
   
    <h2 id="title">광주시에 오신 것을 환영합니다.</h2>

    <div id="box">

        <img src="images/gwangju.png" alt="희망도시 행복광주">

        <div id="text">
            <h3>광주시청</h3>
            <p>광주시 대표포털</p>
        </div>

    </div>

</body>

 

10. 박스에 닿으면 애니메이션 전환 효과주고 여백주고 text-align 으로 배열 맞추기 

 
             #title {
                font-size: 2em; /*영문 M 글자 기준으로 2배 크기임. 글자 기본크기 16px*2 = 32px*/
                margin:1em 0;
                text-align: center;
            }

            #box { /*바깥쪽 전체 박스*/
                text-align:center;
                width: 400px;
                background: #423537;

                padding:2em;
                border-radius: 1em;
                margin: auto;
                box-shadow: 0 1em 1em rgba(0,0,0,.2);
                transition: .3s
             }

             /*전체 박스에 닿으면 배경색/위치 바꾸기*/
             #box:hover {
                background: #F24130;
                transform: translateY(-1em);
                box-shadow: 0 2em 1em rgba(0,0,0,.2);
             }


            #box > img {  /*로고 이미지*/
                width:70%;
                margin: 1em 0;
                transition: .3s;
            }
            #text {
                margin: 1em 0;
              }
     
            /*박스에 닿으면 이미지를 아래로 이동*/
            #box:hover > img {
                transform: translateY(80%);
                filter:brightness(100%);
            }

            /*박스에 닿으면 이미지를 위로 이동*/
            #box:hover > #text {
                transform: translateY(-250%);
                color:#FFF;
            }

            #box:hover > #text > h3 {
                color:#ffcbc8;
            }

           
            #text > h3 {  
                font-szie:1.5em; color: #f8b9b9;
            }
            #text > p  {
                color:#FFF;
             }

    </style>

 

 

[완료] 

기본 서식에 색상을 바꾸어주었습니다. 

색상과 로고 이미지 만드셔서 이미지만 바꾸셔서 사용하면 되실 듯 합니다.^^ 

<!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 Animation</title>

      <style>
            /*G마켓 폰트 CDN 연결*/
            @font-face {
                font-family: 'GmarketSansMedium';
                src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/GmarketSansMedium.woff') format('woff');
                font-weight: normal;
                font-style: normal;
            }

            * { /*모든 요소 공통사항*/
                font-family: 'GmarketSansMedium';
                box-sizing: border-box;
                margin:0;
            }

            body {  
                background: #F2F2F2;
            }
            
            #title {
                font-size: 2em; /*영문 M 글자 기준으로 2배 크기임. 글자 기본크기 16px*2 = 32px*/
                margin:1em 0;
                text-align: center;
            }

            #box { /*바깥쪽 전체 박스*/
                text-align:center;
                width: 400px;
                background: #423537;

                padding:2em;
                border-radius: 1em;
                margin: auto;
                box-shadow: 0 1em 1em rgba(0,0,0,.2);
                transition: .3s
             }

             /*전체 박스에 닿으면 배경색/위치 바꾸기*/
             #box:hover { 
                background: #F24130;
                transform: translateY(-1em);
                box-shadow: 0 2em 1em rgba(0,0,0,.2);
             }


            #box > img {  /*로고 이미지*/ 
                width:70%;
                margin: 1em 0;
                transition: .3s;
            }
            #text {
                margin: 1em 0;
              }
      
            /*박스에 닿으면 이미지를 아래로 이동*/
            #box:hover > img {
                transform: translateY(80%);
                filter:brightness(100%);
            }

            /*박스에 닿으면 이미지를 위로 이동*/
            #box:hover > #text {
                transform: translateY(-250%);
                color:#FFF;
            }

            #box:hover > #text > h3 {
                color:#ffcbc8;
            }

           
            #text > h3 {  
                font-szie:1.5em; color: #f8b9b9;
            }
            #text > p  { 
                color:#FFF;
             }

    </style>

</head>
<body>
    
    <h2 id="title">광주시에 오신 것을 환영합니다.</h2>

    <div id="box">

        <img src="images/gwangju.png" alt="희망도시 행복광주">

        <div id="text">
            <h3>광주시청</h3> 
            <p>광주시 대표포털</p>
        </div>

    </div>

</body>
</html>

 

댓글