Banner 1
Banner 2
hero

Phạm Văn Tú

4518 thành viên

  1. Trang chủ /
  2. Reactjs & Nextjs /
  3. Styling trong React

Styling trong React

Nay mình cùng tìm hiểu các cách khác nhau để style trong React nghen.

I. Inline styles

– Thêm vào thuộc tính style của tag html, và viết các thuộc tính theo dạng camelCase nha. Ví dụ backgroundColor, textAlign…

<h1 style={{ textAlign: 'center', color: 'red' }}></h1>

– Cách này ít dùng, chỉ dùng khi cần thay đổi styles theo props, hoặc giá trị động từ api trả về chẳng hạn

II. Css

– Cách này tạo 1 file css bên ngoài và import vào dùng những class, id… đã định nghĩa sẵn bên file css này là okie rồi

/* styles.css */
.text-center {
  text-align: center;
}

/* component.js */
import './styles.css';

III. Scss & Bem

– Cũng như cách trên  nhưng tạo file scss và có thể viết sass trông gắn gọn, sạch sẽ hơn ahihi

/* styles.scss */
.menu {
  display: flex;
  &-item {
    position: relative;
  }
  &-link {
    color: "blue";
  }
}

/* component.js */
import './styles.scss';

IV. Css Module

– Đối với cách này thì sẽ tạo ra 1 unique class bằng cách thêm các chuỗi vào tên class nên sẽ ko gặp vấn đề về trùng class giữa các dev với nhau

/* styles.module.css */
.title{
  color: red;
}

/* component.js */
import './styles.module.css';
Title is here

V. Styled Component

– Cách này viết css trong js luôn. Nó sẽ tự tạo ra class unique cho mình nên cũng sẽ không gặp vấn đề trùng class cách css module

/* component.js */
const TitleStyles= styled.h1`
  text-align: center;
  color: ${props => props.color || "red"}
hero