스타일 초기화를 위한 간단한 reset.css 와 normalize.css
/* 모든 여백 제거 */
body, h1, h2, h3, p, ul, ol {
margin: 0;
padding: 0;
}
/* 리스트 점 없애기 */
ul, ol {
list-style: none;
}
/* 박스 크기 초기화 */
* {
box-sizing: border-box;
}
쉽게 말해: "브라우저 기본 스타일 다 지우고, 내가 스타일을 처음부터 다 정리할게!"라는 느낌이야.
/* HTML5 요소 스타일 정리 */
article, aside, footer, header, nav, section {
display: block;
}
/* 폰트 상속 문제 해결 */
button, input {
font: inherit;
}
/* 테이블 테두리 조정 */
table {
border-collapse: collapse;
border-spacing: 0;
}
쉽게 말해: "브라우저 기본 스타일을 완전히 없애지는 않고, 조정해서 보기 좋게 만들자!"라는 느낌이야.
| reset.css | normalize.css |
|---|---|
| 모든 스타일을 다 없앰 | 스타일을 조정하고 통일 |
| 초기화 후, 스타일을 처음부터 정해야 함 | 기본 스타일을 보존하면서 수정 |
| 강력하고 깔끔하게 초기화됨 | 더 자연스럽고 부드러운 결과 |
table에 관한 코드가 reset.css와 normalize.css 둘 다에 해당할 수 있느냐를 따져보면, 상황에 따라 다르다고 할 수 있다.
reset.css는 기본적으로 스타일을 전부 제거하거나 0으로 초기화하는 데 집중해.
따라서 border-collapse: collapse;와 border-spacing: 0; 같은 코드는 기본 브라우저 스타일을 없애는 역할로 볼 수 있어.
즉, reset.css에서 충분히 등장할 수 있는 코드야.
normalize.css는 브라우저마다 다른 기본 스타일을 통일하는 데 집중해.
border-collapse와 border-spacing은 일부 브라우저에서 기본값이 다를 수 있기 때문에, normalize.css에서도 등장할 가능성이 있어.table { border-collapse: collapse; border-spacing: 0; }는 reset.css와 normalize.css 둘 다에서 등장할 수 있는 코드야.
html, bodyhtml, body {
margin: 0;
padding: 0;
border: 0;
}
body나 html에 기본적으로 여백(margin)과 안쪽 여백(padding)을 추가하는데, 이걸 없애서 레이아웃을 깔끔하게 만들어.border)도 없앰.ol, ulol, ul {
list-style: none;
}
ul(순서 없는 리스트)과 ol(순서 있는 리스트)에 점이나 숫자 같은 리스트 스타일을 붙여. 이걸 없애서 깔끔한 리스트를 만들도록 초기화한 거야.tabletable {
border-collapse: collapse;
border-spacing: 0;
}
border-collapse: collapse;: 테이블 셀(border) 사이의 간격을 없앰.border-spacing: 0;: 셀 사이의 간격을 0으로 설정.reset.css랑 normalize.css는 스타일 초기화를 위한 CSS 파일인데, 웹 브라우저마다 기본 스타일이 다르기 때문에, 모두 비슷하게 보이도록 만들어주는 역할을 해.