인라인 스타일
인라인 스타일은 HTML에서 태그 안에 스타일 속성을 추가할때 사용했다.
마찬가지로 리액트에서 컴포넌트 / 일반 태그 안에 스타일 속성을 줄 수 있다.
단, JSX 문법에 의해서 HTML에 적용하던 방법과는 다르다.
- style에 대한 value는 객체 형태이다.
- CSS 속성 이름은 카멜 케이스로 한다.
import React from 'react';
const PracticeStyle = () => {
return (
<div style={{marginTop: 10px; backgroundColor: red}}>
스타일을 적용해보자.
</div>
);
}
export default PracticeStyle
인라인 스타일의 문제점
{} === {}
는false
이기 때문에, 리렌더링시에 인라인 스타일이 적용된 컴포넌트 / 일반태그가 다르다고 판단하여 돔을 새로 그리게 되어 불필요한 리로딩이 발생- style 속성의 재사용성이 떨어짐
해결 방법
- 변수로 설정해 사용
import React from 'react';
const PracticeStyle = () => {
const style = {
marginTop: "10px",
backgroundColor: "red"
}
return (
<div style={style}>
스타일을 적용해보자.
</div>
);
}
export default PracticeStyle
- styled component 사용
import React from 'react';
import styled from 'styled-components';
const DivStyle = styled.div`
margin-top: 10px;
background-color: red;
`;
const PracticeStyle = () => {
return (
<DivStyle />
);
}
export default PracticeStyle
Author And Source
이 문제에 관하여(인라인 스타일), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@hqillz/인라인-스타일저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)