Notice
Recent Posts
Recent Comments
Link
소파에서 개발하기
[내일의집] Global Navigation Bar 본문
01. 레이아웃 분석
- 모바일(sm) / 태블릿(md) / 데스크탑(lg)
- 공통요소 찾기
- 디자인 뿐 아니라 기능이 완전히 동일한 요소를 찾아야.
- 3타입 공통요소 : 서비스명(h1, a), 장바구니 버튼(button, a)
- md-lg 공통요소 :
- 원샷원킬하는 반응형 레이아웃 잡기
- 시안에서 구역이 나뉘는 or 묶이는 부분 찾기
- breakpoint별로 무엇을 숨기거나 추가해서 해당 구역 안에 집어넣을 수 있도록 설계
02 마크업 작성
- 모바일 -> 태블릿 -> 데탑 순서
- sementic markup : 전체는 <heading>, 내부에는 <a>, <button>(타입 꼭 적기), <nav>(제목태그 꼭 넣기), 등 이용해서 작성. 필요에 따라 aria-label, aria-hidden, sm-only, visually-hideen, btn-primary 등 추가
- 레이아웃 grid system 추가 : .container > .row > .col-*
- 전체 요소에 클래스 이름 지정 : 알아보기 쉽게 지정, style 작업하며 필요해지는 class는 추가
- state변화 체크 : hover, focus, active, disabled는 기본. authentication 등으로 인해 많은 양의 변화가 있을 때는 note와 readme 남겨주기
- 리팩토링 : 일부 components를 새 파일로 옮길 때는 고유의 스타일(width, color 등)을 선언하는 코드 위주로 옮기기. margin 등 화면 레이아웃에 관련된 특수한 선언은 레이아웃 파일의 일부로 남기는 게 낫다.
03 스타일 디테일
- <a> 영역 확장 : 글씨 외부의 일정 공간도 클릭할 수 있도록 display:block, padding 넣고, 그만큼 item 간격 재조정
- <strong class="badge"> : position:absolute로 똑 떼어다 얹기
- position:relative인 <div> 안에 2개의 child가 있을 때, div에 특별한 형태가 없다면 2nd child는 1st child 기준으로 위치를 잡음
- *모서리 곡률* : border-radius : (1) 50% 넣으면 사각형 전체 외곽선이 4등분되어 적용됨 (타원형) (2) (width or height)/2 px 이상의 숫자를 넣으면 뾰족한 꼭지점만 깎임
- 툴팁 만들기 : border 생기는 원리 이용! 크기 없는 ::before 블록에 위/아래와 왼/오 각각 같은 사이즈 줘 가며 모양 잡기. 툴팁에 border가 필요하면 ::after도 만들어 약간 빗겨가게 겹치면 눈속임 가능.
'프론트엔드 공부 > 클론코딩 실습' 카테고리의 다른 글
[내일의집] Local Navigation Bar (0) | 2022.04.14 |
---|---|
[내일의집] Sidebar (dreawer) + Search Modal (0) | 2022.04.12 |
[넷플] React 1. STATE (0) | 2022.03.31 |
[넷플] React.js 기본 (0) | 2022.03.30 |
[내일의 집] scss - 모듈 Module (0) | 2022.03.29 |