NetflixIntro
기록하기
netflixIntro
netflixIntro
에는 따로div
으로Container
를 만들어주지 않았기 때문에netflixIntro
에Container
컴포넌트 적용현재의 작업이 컴포넌트를 사용하는 작업이다.
netflixIntro__figure
의<img>
에class="resetImg"
적용figure
에 기본으로 적용되어 있던margin
값 제거img
가video
를 덮는 디자인을 구현하기 위해z-index
를 사용하려 했으나z-index
는position
속성(static
외 다른 요소)을 적용하지 않으면 적용이 힘들었다. 그래서position: relative;
속성 적용했다.absolute
는 부유해 버리는 특징 때문에 레이아웃이 무너져 버린다.netflixIntro__downloadContent
에position: absolute;
을 적용한 다음margin-bottom
값으로img
위에서 위치를 조정하려고 했으나img
가 형제 요소이기 때문에 컨텐츠가img
올라가지 않았다. 결국bottom
값으로 위치를 잡았다.netflixIntro
에<br />
가 적용된 요소에role="text"
적용netflixIntro__downloadContent
의<p>
요소에는 적용안함. 왜냐하면 내가 봤을 때는 "기묘한 이야기, 저장중"이라는 문장이 이어지는 문장이 아니라고 생각했기 때문이다.
그리고 role="group"은 트리 구조를 구현하거나, 드롭다운 메뉴를 만들 때 사용한다.
treeitem 역할 또는 menuitem 역할을 가진 요소를 묶을 때 사용한다.
트리구조를 웹에서 구현할 때, 그룹이 필요한 경우
role="group"
을 사용할 수 있다.
downloadIcon
의 수직 위치를 가운데 정렬하기 위해서<img>
에margin-top: auto; margin-bottom: auto;
적용


고민하기
netflixIntro__downloadContent
에서text
의 위치를 잡을 때text-align: left;
부모요소가downloadContent
이다 보니text-align: left;
했을 떄 박스의 왼쪽 끝으로 위치해버린다.position: absolute;
앞서position
속성을 많이 사용했기 때문에 브라우저의 성능 면으로 봤을 때 좋지 않겠지만 마크업을 수정하지 않고 진행한다는 장점이 있다. 하지만 데스크탑 버전을 생각했을 때 또다시 위치를 고려해야 한다는 단점이 너무 크다🎯 선택!
display: flex;
flex
를 사용해 위치를 잡기 위해서는text
를 묶어줄 컨테이너가 필요하다.text를div으로 랩핑한다.단점은 마크업에<div>
요소가 이미 너무 많고 마크업을 수정하지 않는 쪽으로 진행하고 싶다.하지만 데스크탑 버전까지 고려했을 때 위치를 조정하거나 수정하는 부분에서는 최선의 방법이다.🌿 이미
p
태그가text
를 묶는 컨테이너 역할을 하고 있다. 또 다른 컨테이너를<div>
을 사용해 묶는다면 이미p
태그가 같은 역할하므로 의미 없는<div>
태그가 되어 버린다.결론,
netflixIntro__downloadContent
에서 text의 위치를 잡을 때는flex
또는grid
를 사용하는 것이 최선이라고 생각하며 이를 사용하기 위해text
를 묶어줄 컨테이너를 사용할 필요는 없다.
Last updated
Was this helpful?