레이아웃 컴포넌트 분리 및 재사용성: 헤더, 콘텐츠, 푸터 레이아웃을 각각의 컴포넌트로 분리하여 UI를 구성하고, children prop을 활용해 유연성을 높였습니다. 🧩
조건부 렌더링 활용: 데이터 유무에 따라 컴포넌트의 렌더링 방식(예: 제목 없음, 소제목 숨김, 휴지통 이미지 표시)을 동적으로 제어하여 사용자 경험을 개선했습니다. 🚦
옵셔널 프롭스 및 기본값 설정: 프롭스에 ?를 사용하여 선택적 속성을 정의하고, 데이터가 없을 경우 기본값을 설정하여 컴포넌트의 유연성과 안정성을 확보했습니다. 🎁
CSS Flexbox를 이용한 정렬: display: flex, flex-direction, justify-content, align-items, align-self, gap 등 Flexbox 속성을 적극 활용하여 다양한 UI 요소의 가로/세로 정렬 및 간격 조절을 구현했습니다. ↔️
overflow 속성으로 스크롤 처리: 내용이 길어질 경우 overflow: scroll 또는 overflow: auto를 사용하여 특정 영역 내에서 스크롤이 가능하도록 처리하여 UI 공간을 효율적으로 관리했습니다. 📜
box-sizing: border-box 이해 및 적용: 패딩이 요소의 전체 크기를 늘리지 않도록 box-sizing: border-box를 적용하여 레이아웃 계산의 정확성을 높였습니다. 📦
MDN 문서 활용의 중요성 강조: 새로운 CSS 속성이나 개념 학습 시 MDN과 같은 공식 문서를 참고하는 것이 깊이 있는 이해와 정확한 정보 습득에 필수적임을 역설했습니다. 📚
동적 스타일 적용 기법: 스프레드 연산자(...)를 사용하여 기존 스타일 객체를 분해하고 새로운 스타일 속성을 추가하는 방식으로 조건에 따른 동적 스타일 변경을 구현했습니다. ✨