CSS 애니메이션과 트랜지션 활용하기
웹 디자인에서 시각적 효과는 사용자의 경험을 향상시키는 중요한 요소입니다. 특히, CSS 애니메이션과 트랜지션은 웹 페이지에 생동감을 주고, 방문자에게 더 기억에 남는 요소를 제공하는 데 큰 역할을 합니다. 이번 글에서는 CSS를 사용해 다양한 애니메이션 효과와 트랜지션을 적용하는 방법에 대해 알아보도록 하겠습니다.

CSS 애니메이션의 기초
CSS 애니메이션은 여러 웹 요소에 생동감 있는 변화를 주기 위해 사용됩니다. 주요한 구성 요소는 @keyframes
과 animation
속성입니다. 이 두 가지를 통해 애니메이션의 시작과 끝, 그리고 중간 과정을 세밀하게 조정할 수 있습니다.
애니메이션을 정의하는 기본적인 방법은 다음과 같습니다:
@keyframes 애니메이션이름 {
0% { /* 시작 스타일 */ }
100% { /* 끝 스타일 */ }
}
위와 같이 @keyframes
를 사용해 애니메이션의 동작을 정의한 뒤, 해당 애니메이션을 적용할 요소에 animation-name
속성을 통해 참조하여 사용합니다.
트랜지션의 이해
트랜지션은 CSS 속성이 변화하는 것을 부드럽게 표현해주는 효과입니다. 단순히 속성을 변경하는 것보다 자연스럽고 매끄러운 변화를 제공합니다. 트랜지션 효과는 주로 마우스 호버와 같은 사용자 상호작용에 의해 발생합니다.
- animation-name: 사용할 애니메이션의 이름 지정
- animation-duration: 애니메이션이 실행되는 시간 설정
- animation-timing-function: 속도 변화를 설정
- animation-delay: 애니메이션이 시작되기 전 대기 시간 설정
형광펜 효과와 애니메이션 예제
형광펜 효과는 강조하고 싶은 내용을 더 돋보이게 할 수 있는 좋은 방법 중 하나입니다. CSS를 활용하여 여러 가지 형광펜 스타일을 적용해볼 수 있습니다.
기본 형광펜 효과
기본적으로 <mark>
태그를 활용하여 형광펜 효과를 줄 수 있습니다. 스타일을 추가하면 더 다양한 색상과 효과를 적용할 수 있습니다.
mark {
background-color: rgba(255, 255, 0, 0.3);
}
위 코드를 사용하면 기본적인 노란색 형광펜 효과가 나타납니다. 더 나아가 배경색과 그라데이션을 활용하여 여러 색상의 형광펜 효과도 가능합니다.
마우스 호버시 애니메이션
마우스를 올렸을 때 애니메이션 효과를 추가하면 더욱 인터랙티브한 경험을 제공합니다. 예를 들어, 밑줄이 마우스 이동에 따라 나타나도록 설정하면 다음과 같습니다:
.to-right-underline {
position: relative;
}
.to-right-underline:after {
content: "";
position: absolute;
bottom: -10px;
left: 0;
width: 0;
height: 2px;
background-color: #8fd3f4;
transition: width 0.3s ease;
}
.to-right-underline:hover:after {
width: 100%;
}
위 코드를 통해 마우스를 올리면 오른쪽으로 확장되는 밑줄 효과를 얻을 수 있습니다.
다양한 애니메이션 효과 적용하기
CSS에서는 여러 다른 애니메이션 효과를 손쉽게 적용할 수 있습니다. 아래는 몇 가지 예제입니다.

가운데서 좌우로 펼쳐지는 애니메이션
.spread-underline {
display: inline-block;
position: relative;
}
.spread-underline:after {
content: "";
position: absolute;
left: 50%;
bottom: 0;
width: 0;
height: 2px;
background: #ffb000;
transition: width 0.3s ease, left 0.3s ease;
}
.spread-underline:hover:after {
width: 100%;
left: 0;
}
이 코드는 요소에 마우스를 올릴 때, 가운데서 양옆으로 펼쳐지는 밑줄 효과를 생성합니다.
형광펜 효과가 위로 올라오는 애니메이션
.highlight {
background-image: linear-gradient(120deg, #84fab0, #8fd3f4);
background-repeat: no-repeat;
background-size: 100% 50%;
background-position: 0 88%;
transition: background-size 0.25s ease;
}
.highlight:hover {
background-size: 100% 100%;
}
위 코드는 형광펜 효과가 마우스를 올릴 때 위로 올라오는 애니메이션을 구현합니다.

결론
CSS 애니메이션과 트랜지션을 활용하면 웹 페이지에 쉽게 생명력을 불어넣을 수 있습니다. 다양한 효과를 조합하여 사용자에게 기억에 남는 경험을 제공할 수 있습니다. 주어진 예제들을 참고하여 자신만의 독창적인 스타일로 변형하면 더욱 매력적인 결과를 얻을 수 있을 것입니다.
웹 디자인에서 애니메이션과 트랜지션은 단순한 장식이 아닌, 사용자 경험을 향상시키는 강력한 도구입니다. 이를 적절히 활용하여 귀하의 웹 프로젝트에 독특한 매력을 부여해보시기 바랍니다.
자주 물으시는 질문
CSS 애니메이션은 어떻게 설정하나요?
CSS 애니메이션을 설정하기 위해서는 @keyframes
와 animation
속성을 사용하여 원하는 동작을 정의하고, 이를 특정 요소에 적용하면 됩니다.
트랜지션 효과란 무엇인가요?
트랜지션 효과는 CSS 속성이 변화할 때 자연스럽고 부드러운 전환을 제공하며, 주로 사용자의 마우스 동작과 같은 상호작용에 의해 발생합니다.
형광펜 효과는 어떻게 만들 수 있나요?
형광펜 효과는 <mark>
태그를 사용하여 기본적인 스타일을 적용한 후, CSS로 다양한 색상과 그라데이션을 추가하여 구현할 수 있습니다.