


npm install style-components --save
그리고
import {styled } from "styled-components";
사용할 곳에 임포트 해주면 돼.
하다 보면 이렇게 사용하는 것 같던데, css를 백틱을 사용해서 하더라고? 왜 그럴까 알아보니
import "sanitize.css";
import { createGlobalStyle } from "styled-components";
export const GlobalStyle = createGlobalStyle`
body {
padding : 0;
margin : 0;
}
h1 {
margin : 0;}
`;
JavaScript의 "템플릿 리터럴" 문법임.
// 일반 문자열
const name = "안녕" + "하세요";
// 템플릿 리터럴 (백틱)
const name = `안녕하세요`;
CSS 코드를 "문자열처럼" 전달하기 위해서임.
// 이렇게 CSS를 그냥 문자열로 넣는 거임
export const GlobalStyle = createGlobalStyle`
body {
padding: 0;
margin: 0;
}
`;
백틱 안에 있는 내용이 CSS 코드 그대로 createGlobalStyle 함수에 전달됨.
1. 여러 줄 쓰기 편함
// 일반 문자열 - 불편함
const css = "body { padding: 0; margin: 0; }";
// 백틱 - 편함
const css = `
body {
padding: 0;
margin: 0;
}
`;
2. 변수 넣기 가능
const color = "red";
const Button = styled.button`
background: ${color}; // 변수 사용 가능!
`;
createGlobalStyle`CSS 코드`