# Đổi đơn vị CSS (px sang rem, em, pt)

> Đổi px sang rem, em, pt, pica, inch và mm theo cỡ chữ của phần tử gốc, phần tử cha và DPI. CSS quy định 1 in = 96 px = 72 pt.

Phiên bản tương tác: https://www.calcopenly.com/vi/conversion/css-unit-converter
Chủ đề: Công cụ đổi đơn vị

CSS converts every length through pixels. The absolute units are fixed to each other: 1 in = 2.54 cm = 96 px = 72 pt = 6 pc, and 1 Q is a quarter of a millimetre. The font-relative units depend on the page: 1 rem is the root element's font size, and when you set font-size, 1 em (or 100%) is the parent's font size. The converter turns the value into pixels, then divides by the pixels in one target unit.

Front-end developers use it to turn a design's pixel sizes into rem, so text follows the reader's browser font setting: with the default 16 px root, 24 px is 1.5 rem. Print designers use the pixels-per-inch field instead; at 300 DPI a 10 mm logo needs about 118 pixels.

On screens a CSS inch is not a measured inch. Browsers anchor 96 px to a reference pixel of about 0.0213° of visual angle, so physical units match a ruler only in print.

## Dữ liệu đầu vào

- **Giá trị**
- **Từ** (lựa chọn: Pixels (px), Points (pt), Picas (pc), Inch (in), Xentimét (cm), Milimét (mm), Quarter-millimetres (Q), em (parent font size), rem (root font size), Percent of parent font size (%))
- **Sang** (lựa chọn: Pixels (px), Points (pt), Picas (pc), Inch (in), Xentimét (cm), Milimét (mm), Quarter-millimetres (Q), em (parent font size), rem (root font size), Percent of parent font size (%))
- **Root font size (for rem)**
- **Parent font size (for em and %)**
- **Pixels per inch**: CSS fixes 1 in = 96 px. Enter a screen or printer density (e.g. 300) to count physical pixels instead.

## Kết quả

- Giá trị sau chuyển đổi — kết quả chính
- As CSS
- In pixels (px)

## Công thức

$$
\begin{gathered} \text{to} = \text{value} \times \frac{\text{px per from-unit}}{\text{px per to-unit}} \\ 1\,\text{in} = 96\,\text{px} = 72\,\text{pt} = 2.54\,\text{cm} \end{gathered}
$$

## Ví dụ có lời giải

### 24 px in rem

- Giá trị: 24
- Từ: Pixels (px)
- Sang: rem (root font size)
- Root font size (for rem): 16 px
- **Giá trị sau chuyển đổi: 1.5 rem**
- **As CSS: 1.5rem**
- **In pixels: 24 px**
- Nguồn đối chiếu: CSS Values 3 §6.1: 1rem = root font size (16 px browser default); 24 / 16 = 1.5

### 12 pt in px

- Giá trị: 12
- Từ: Points (pt)
- Sang: Pixels (px)
- Root font size (for rem): 16 px
- **Giá trị sau chuyển đổi: 16 px**
- **As CSS: 16px**
- Nguồn đối chiếu: CSS Values 3 §6.2: 1pt = 1/72 in, 1in = 96px; 12 × 96/72 = 16

### 1 inch in CSS pixels

- Giá trị: 1
- Từ: Inch (in)
- Sang: Pixels (px)
- Root font size (for rem): 16 px
- **Giá trị sau chuyển đổi: 96 px**
- Nguồn đối chiếu: CSS Values 3 §6.2: 1in = 96px

### 1.5 rem in px

- Giá trị: 1.5
- Từ: rem (root font size)
- Sang: Pixels (px)
- Root font size (for rem): 16 px
- **Giá trị sau chuyển đổi: 24 px**
- Nguồn đối chiếu: 1 rem = root font size (16 px); 1.5 × 16

### 10 mm at 300 DPI

- Giá trị: 10
- Từ: Milimét (mm)
- Sang: Pixels (px)
- Root font size (for rem): 16 px
- Pixels per inch: 300 DPI
- **Giá trị sau chuyển đổi: 118.1102362 px**
- Nguồn đối chiếu: 10 / 25.4 in × 300 px/in = 118.110236220… (Python fractions)

### 100% is 1 em

- Giá trị: 100
- Từ: Percent of parent font size (%)
- Sang: em (parent font size)
- Root font size (for rem): 16 px
- **Giá trị sau chuyển đổi: 1 em**
- Nguồn đối chiếu: CSS: percentage font sizes and em both refer to the parent font size

## Câu hỏi

### How many pixels is 1 rem?

16 pixels by default. One rem equals the font size of the root html element, and the major browsers set that to 16 px unless the reader changes the default font size or the stylesheet sets html { font-size }. Setting html { font-size: 62.5% } makes 1 rem = 10 px. The W3C CSS Values and Units specification defines rem; the 16 px figure is the browser default, not part of the specification.

### How do I convert px to pt?

Multiply pixels by 0.75; to go from points to pixels, multiply by 4/3 (about 1.333). Both factors follow from the W3C CSS rule 1 in = 96 px = 72 pt, so 1 px = 72/96 pt. Body text at 16 px is 12 pt, and 11 pt text from a word processor is about 14.67 px.

### What is the difference between em and rem?

rem always refers to the root element's font size; em refers to the current element's font size, or to the parent's when used on font-size itself. So em compounds when nested: a list set to 1.2em inside another list set to 1.2em has text 1.44 times the outer size, while 1.2rem stays at 19.2 px with a 16 px root however deep it sits.

### Should I use px or rem for font sizes?

Use rem if text should follow the reader's browser font-size setting. Page zoom enlarges px and rem alike, but the default font-size preference changes only rem, em and percentage sizes. WCAG 2.1 success criterion 1.4.4 (level AA) requires text that can be resized to 200% without loss of content or function; browser zoom can meet it with px, and rem also honours the font-size preference.

### Is a CSS inch the same as a real inch?

Only in print. CSS defines 1 in as exactly 96 px, and on screens browsers anchor the pixel to the W3C reference pixel: one pixel of a 96 DPI screen seen from 28 in away, a visual angle of about 0.0213°. Phones are held closer and use smaller pixels, so a 96 px box measures well under an inch on most phones. Printers anchor to physical units, so 1 in prints as 25.4 mm.

### “Đổi đơn vị CSS (px sang rem, em, pt)” chính xác đến mức nào?

Độ chính xác phụ thuộc vào dữ liệu nhập và giả định của phương pháp. Phép tính thập phân dùng 50 chữ số có nghĩa, nhưng ước lượng, phương pháp số và dữ liệu nguồn có thể kém chính xác hơn; làm tròn khi hiển thị không loại bỏ các giới hạn đó. Ví dụ có lời giải đã đối chiếu với nguồn độc lập: 7. Ví dụ, “24 px in rem” được kiểm tra bằng CSS Values 3 §6.1: 1rem = root font size (16 px browser default); 24 / 16 = 1.5.

### Phương pháp này lấy từ đâu?

W3C — CSS Values and Units Module Level 3, §6.2 absolute lengths and §6.1 font-relative lengths.

## Nguồn

- [W3C — CSS Values and Units Module Level 3, §6.2 absolute lengths and §6.1 font-relative lengths](https://www.w3.org/TR/css-values-3/#absolute-lengths)
