[JavaScript30] 05 - Flex Panel Gallery

2024. 12. 10. 16:39·스터디/JavaScript30

 

소스 코드

 

JavaScript30/05 - Flex Panel Gallery/index-START.html at master · jisunipark/JavaScript30

30 Day Vanilla JS Challenge. Contribute to jisunipark/JavaScript30 development by creating an account on GitHub.

github.com

 

Today I Learned

transition 활용

패널을 클릭 시 위 아래에서 글자가 나타나게 하는 트랜지션이다. 패널 요소 클릭 시 open-active 클래스가 토글되도록 했고, 디폴트 상태에서는 transform 속성의 값으로 translateY(+/-100%)를 주어 해당하는 요소를 숨겨두었다가 open-active 클래스를 가지게 되면 transform 속성의 값을 translateY(0)으로 변경하여 화면에 보이게 한다.

 

그리고 모든 패널에 대해 transition 속성을 통해 transform 속성에서 변경이 일어날 때 0.5초 동안의 트랜지션을 걸어 애니메이션 효과를 줌으로써 조금 더 생동감 있는 인터렉션을 만든다.

.panel > *:first-child {
  transform: translateY(-100%);
}

.panel.open-active > *:first-child {
  transform: translateY(0);
}

.panel > *:last-child {
  transform: translateY(100%);
}

.panel.open-active > *:last-child {
  transform: translateY(0);
}
.panel > * {
  margin: 0;
  width: 100%;
  transition: transform 0.5s;
  flex: 1 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
}

CSS에서 transition을 활용하는 것도 연습을 많이 하다보면 익숙해지지 않을까 싶다.

 

저작자표시 비영리 변경금지 (새창열림)

'스터디 > JavaScript30' 카테고리의 다른 글

[JavaScript30] 04 - Array Cardio Day 1  (0) 2024.12.07
[JavaScript30] 03 - CSS Variables  (1) 2024.12.07
[JavaScript30] 02 - JS and CSS Clock  (3) 2024.12.06
[JavaScript30] 01 - JavaScript Drum Kit  (4) 2024.12.06
'스터디/JavaScript30' 카테고리의 다른 글
  • [JavaScript30] 04 - Array Cardio Day 1
  • [JavaScript30] 03 - CSS Variables
  • [JavaScript30] 02 - JS and CSS Clock
  • [JavaScript30] 01 - JavaScript Drum Kit
jisunipark
jisunipark
일신우일신 | 日新又日新 압축성장 중인 개발자입니다.
  • jisunipark
    일신우일신
    jisunipark
    • 분류 전체보기 (89)
      • Frontend (12)
        • HTML ∙ CSS ∙ JavaScript (8)
        • React.js (4)
        • Next.js (0)
      • Backend (5)
        • Express.js (2)
        • Flask (3)
      • Language (27)
        • Python (24)
        • Java (3)
        • Kotlin (0)
      • Etc. (3)
        • Git ∙ GitHub (3)
      • 개발서적 (19)
        • 모던 자바스크립트 Deep Dive (16)
        • 리팩터링 2판 (3)
      • 스터디 (6)
        • JavaScript30 (5)
        • 독서 스터디 (1)
      • 배움과 성장 (4)
        • 컨퍼런스 ∙ 세미나 (1)
        • 생각 기록 (3)
      • 회고 (5)
      • English ver. (4)
  • 인기 글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
jisunipark
[JavaScript30] 05 - Flex Panel Gallery
상단으로

티스토리툴바