스타일링 방식을 알아보자
· 약 5분
CSS는 HTML 문서의 요소들을 꾸미는 역할을 합니다. 처음 CSS를 배우고 나서는 도전적인 과제가 주어지거나, 인터렉티브한 과제가 주어지지 않는 이상 초반에 배웠던 CSS를 그대로 사용하게 되는데요. 저도 취업 이후에는 따로 CSS를 공부하지 않았던 것 같습니다. 최근 zero-runtime CSS-in-JS 키워드를 접하게 되면서 어떤 스타일링 방식이 있는지 다시 한 번 정리해보고자 합니다.
CSS의 작동방식
노트
CSS 작동방식 MDN
CSS는 주로 inline, internal, external 세 가지 방식으로 작성할 수 있습니다.
inline CSS
<p style="color: blue; font-size: 16px;">이 문장은 파란색과 16px 크기입니다.</p>
태그의 style 속성에 직접 CSS를 작성하는 방식입니다.
장점
- 간단한 적용
- 별도의 CSS 파일이 필요 없음: CSS 파일을 추가로 로드할 필요가 없어서, 네트워크 요청을 줄여 초기 로딩 시간을 약간 단축할 수도 있습니다.
- 특정 요소에 스타일 우선순위 제공: 인라인 스타일은 CSS 규칙 중에서 최우선으로 적용됩니다. 외부 스타일시트에서 스타일이 덮어씌워지는 문제를 방지할 수 있습니다.
단점
- 재사용성이 떨어짐
- 유지보수가 어려움: 스타일을 한 곳에서 관리하기 어려워 일회성으로 사용되는 경우가 아니라면 권장하지 않습니다.
internal CSS
<head>
<style>
p {
color: green;
font-size: 18px;
}
</style>
</head>
<body>
<p>이 문장은 녹색과 18px 크기입니다.</p>
</body>
HTML 문서 내부에 <style> 태그를 사용하여 CSS를 작성하는 방식입니다.
장점
- 가독성: 컴포넌트와 스타일 로직이 분리되어 가독성이 높아집니다.
단점
- 유지보수가 어려움: 여러 문서에 동일한 스타일을 적용하려면 모든 문서에 동일한 CSS를 작성해야 하므로 유지보수가 어렵습니다.
external CSS(CSS-in-CSS)
<!-- HTML 파일 -->
<head>
<link rel="stylesheet" href="styles.css" />
</head>
<body>
<p>이 문장은 외부 CSS 파일에서 스타일을 적용받습니다.</p>
</body>
/* styles.css 파일 */
p {
color: red;
font-size: 20px;
}
별도의 css 파일을 작성하고, link 태그로 HTML 문서에 연결하는 방식입니다.
장점
- 재사용성: 여러 문서에서 동일한 스타일을 적용할 때 유용합니다.
- 유지보수가 쉬움: 스타일을 한곳에서 관리할 수 있어 유지보수가 쉽습니다.
- 효율성: Sass나 Less와 같은 CSS 전처리기를 사용하면 CSS를 더 효율적으로 작성할 수 있습니다.
