
위 gif보시면 배경 이미지에 요소들이 하나씩 순차적으로 나타납니다.

각 요소를 html에 넣어줍니다.
전역 버튼 스타일
위 html에서도 보이다시피 "자세히 보기"의 클래스는 btn입니다. 즉, 버튼의 약자이고요.
본 프젝 중 btn 클래스를 많이 사용될 것이며 미리 다 css를 지정해 놓겠습니다.


css에서 다 지정해 놓고 다시 html파일로 돌아가 "자세히 보기" 요소 클래스에 btn--brown을 추가하겠습니다.
(이미지는 생략하겠습니다.)


visual 부분의 css 파일입니다.
주로 위치를 지정한 것입니다.
여기서 주의할 게 있습니다.
.visual의 margin-top이 120px를 부여했습니다. 이게 header부분이 120px이기때문입니다.
이래야 visual가 header때문에 가려지지 않으니까요.
.visual .inner은 최상단 inner의 속성을 모두 이어받을 겁니다.
또한 옆에 header혹은 배지부분의 쌓임 순서를 확인해야 합니다.
이미지를 따로 캡처 안 했지만 header부분에 z-index값을 부여했습니다.
순차적으로 요소 보이기

애니메이션을 추가하기위해 html파일을 다시 손 봤습니다.
cup1의 image와 text는 한 묶음으로 같이 나타나니까, div로 감싸줬습니다.
cup2도 마찬가지며, spoon도 그렇습니다.
그리고 각 div에다 fade-in클래스를 추가했습니다.

fade-in클래스에다 우선 투명 속성을 넣어줍니다.

js코드를 통해 요소들을 제어하고 애니메이션 효과를 넣겠습니다.
모든 .fade-in클래스를 보유한 요소들을 다 찾아서 하나씩(forEach) 동작하겠습니다.
여기서도 gsap 라이브러리 사용할 겁니다.
gsap.to(요소, 지속시간, 옵션)
위 사용법을 참고해서 fadeEl요소에 1초의 지속시간에서 아래 옵션을 실행하겠습니다.
delay는 지연시간입니다. 여기서는 일일히 계산하기 힘드니까, index값을 사용했습니다.
index는 0부터 시작하며, 첫 요소부터 지연이 있는 동작을 원해서 index + 1를 했습니다.
(index + 1) * .7 --> 즉, 순서마다 0.7s지연해서 효과를 나타나겠다는 뜻입니다.
어떤 효과를 낼 것이냐? 기존에 이미 다 투명으로 만들었으니 당연히 나타나게 해야죠.
그래서 opacity에 1값을 넣었습니다.
'배워서 따라하는 포플 > 스타벅스 클론' 카테고리의 다른 글
| 스타벅스 클론(7) - 요소 슬라이드(2) - 프로모션 (0) | 2023.08.10 |
|---|---|
| 스타벅스 클론(6) - 요소 슬라이드(1) - 공지사항 swiper (0) | 2023.08.09 |
| 스타벅스 클론(4) - 헤더와 드롭다운 메뉴(2) - 전역배지(GSAP) (0) | 2023.08.09 |
| 스타벅스 클론(3) - 헤더와 드롭다운 메뉴(2) - 메인메뉴 (0) | 2023.08.08 |
| 스타벅스 클론(2) - 헤더와 드롭다운 메뉴(1) - 로고, 서브메뉴, 검색 (0) | 2023.08.08 |