HTML과 React의 구문은 조금씩 다르다.
헷깔리지 않도록 정리해보자
div에 class 주기
HTML에서 <div>에 클래스를 주려면 class를 사용한다.
JSX에서는 className을 사용한다.
HTML
<div class="color"></div>
React
class Colorextends React.Component {
render() {
return (
<div className="color">Big Red</div>
);
}
};
Inline style, HTML에서 style 속성을 사용할 때 다른점
1.
HTML은 kebab-case (예: font-size)
React는 camelCase를 사용한다 (예: fontSize)
2.
React에서 style 속성을 사용할 때
object처럼 사용한다.
3.
React에서 width, height, fontSize 같은 크기를 지정할 때
픽셀(px)이 기본값이라 생략가능.
필요하면 다른 걸로 대체하면 된다.(em, rem, % 등_
HTML
<div style="color: yellow; font-size: 16px">Mellow Yellow</div>
React
class Colorful extends React.Component {
render() {
return (
<div style={{color: "yellow", fontSize: "72px"}}>Mellow Yellow</div>
);
}
};
style{{ 블라 블라 블라 }}
이렇게 중괄호 2개 안해주면 에러가 뜬다.
그 이유를 찾아보자.
길어지는 Inline style을 위해 변수로 빼주자
위의 예처럼 짧은 style이면 괜찮지만 길어지면 보기 힘들 수 있다.
변수를 이용해 빼주자
오브젝트에 스타일을 저장하고 JSX에서 불러와주면 된다.
const styles = {
color: "purple",
fontSize: 40,
"border": "2px solid purple"
}
class Colorful extends React.Component {
render() {
return (
<div style={styles}>Style Me!</div>
);
}
};
'Web Dev > React :: 리액트' 카테고리의 다른 글
React :: 리액트 리팩토링 7가지 팁 (0) | 2022.05.24 |
---|---|
React :: NextJS 라우팅, 링크, 데이터 fetch 4가지 (0) | 2022.03.26 |
React :: styled-components로 컴포넌트 스타일 바꾸기 feat. 실패 예시 (0) | 2022.02.14 |
[React] 리액트는 컴포넌트로 이루어져 있다 (0) | 2020.07.15 |
[React]는 UI를 만들기 위한 자바스크립트 라이브러리 by 페이스북 (0) | 2020.07.11 |