문제
background-color
속성을 사용해 배경색이 변화하는 효과를 구현하려 했으나, 이 속성은 애니메이션으로 배경이 움직이는 효과를 줄 수 없다는 한계가 있음을 발견했다.해결 방법
::before
가상 요소를 활용하는 방법을 선택했다. 이 가상 요소는 독립된 레이어처럼 동작하여 배경이 자연스럽게 차오르는 애니메이션을 적용할 수 있었다.::before
가상 요소에 기본 배경색을 설정하고, 모든 챌린지가 완료되었을 때 해당 상태를 props
로 전달 받아 배경색이 보라색으로 변경되도록 했다.styled-components
의 css
유틸리티를 사용하여 동적으로 animation
속성을 추가하였고, **translateX**
효과로 배경이 좌에서 우로 차오르는 모습을 구현했습니다.결과
문제
해결 방법
padding-top
속성을 사용했다. padding-top
에 백분율(%) 값을 사용하면 부모 요소의 너비를 기준으로 높이가 설정되는 CSS 특성을 활용했다. 유튜브에서 가져온 썸네일의 가로와 세로 비율을 계산하여 padding-top
값으로 설정했다. 이를 통해 화면 크기에 따라 유튜브 썸네일의 비율을 고정하면서 크기를 유동적으로 변화시킬 수 있었다.