8.1 (화)
기존 코드의 일부를 보면, 아래와 같다.
<section id='today' className='snap-start'>
<TodayWeather promise={todayWeathers} />
</section>
TodayWeather 컴포넌트가 브라우저의 상단과 간격없이 붙어 있어서 레이아웃이 좋아보이지 않았다. 그래서 my-10
속성을 붙여줬다.
그랬더니, 스크롤도 my-10이 적용이 되어서, 기존 레이아웃에서 달리진게 없었다.
그래서 아래와 같이 코드를 수정했다.
<section id='today' className='snap-start scroll-my-10 my-10'>
<TodayWeather promise={todayWeathers} />
</section>
왜 이런 문제가 발생했는지 생각해보니, snap-start
라는 속성이 margin에는 적용이 되지 않고, content에만 적용이 되기 때문이다. 그래서, 스크롤 바가 my-10
만큼 내려와서 적용이 되었던 것이다.
✅ snap
속성은 컴포넌트의 margin에는 적용이 되지 않고, content부터 적용된다.
✅ 그렇기에, margin을 적용했다면 scroll에도 같은 크기만큼의 margin을 적용해야 한다.(e.g. scroll-my-10
)
아직 디자인을 하지 않아 매우 엉성하지만, 반응형은 나름 잘 적용이 됐다.
여전히 항상 고민인 것은, 위에서 말했듯이 '디자인을 언제 적용해야 하는가?' 이다.
유튜브에 클론 코딩을 보면 디자인도 동시에 뚝딱뚝딱 적용하던데, 짜여진 스크립트를 보면서 하기에 그런 것인지, 아니면 일반적으로 그렇게 하는 것인지 잘 모르곘다.