CSS: Length Units
Pixel Unit
px
- Pixel. Practically, 1/16 of default font size of a device.
Relative Units
vw
- 1% of the view port width.
vh
- 1% of the view port height.
vmin
-
Smaller of
vw
orvh
vmax
-
Larger of
vw
orvh
%
- Percent. Relative to parent element. Exact meaning depends on the element it is used. ใsee CSS: Percentage Valueใ
Font Based Units
rem
- Root (default) font size. Equivalent to 16px.
em
- Font size of parent element.
ch
- Width of digit 0 of current font.
ex
- Height of lowercase letter x of current font.
Physical Units
cm
- Centimeter.
mm
- Millimeter.
in
- Inch.
pt
- 1/72 of a inch.
pc
- 1/6 of a inch.
Which unit to use
๐ก TIP:
I recommend use only the px
unit, and the following:
em
orch
โ for local font sensitive size, e.g. margin, padding, box round corner.
vw
,vh
,vmin
,vmax
โ for layout control.
Do not use
- percent
%
, because the meaning depends on the html element.
Example: CSS Length Unit
div {margin:1rem}
๐ WARNING: There must be no space before the CSS unit, and a unit is required, except when the value is 0, else it's syntax error.
rem, Root Font Size
The length of rem
is:
The
computed value
of font-size
of the
Root Element
.
When used as value on font-size
property of the
Root Element,
rem
refer to the property's initial value. (in browsers, it's 16px
).
๐ก TIP: think of rem as the default font size, and it's basically always 16px.
em
The length of em
is:
em
is equal to the computed value of thefont-size
property of the element on which it is used. For example, if you saymax-width:50em
on a paragraph, it means, 50 times the computed value offont-size
property of the paragraph.- If
em
occurs in the value of thefont-size
property itself, it refers to the computed value offont-size
of the parent element. - If used on the Root Element,
1em
equals to thefont-size
property's initial value (which is16px
).
ex, x-height
ex
is equal to current font's โx-heightโ, usually the height of the letter x. Typically about half of em
, depending on current font.
Like em
, the length of 1ex
depends on parent's font-size
.
ใsee Meaning of Font Sizeใ
ch
ch
is equal to the box width of the digit 0 (ZERO) character of the current font. It is about the same as half of em
.

vw, vh, vmin, vmax
vw
-
Equal to 1% of the initial containing block (the view port).
It does NOT include the scrollbar width.
When browser window changes size,
vw
also changes.๐ก TIP: One great use of
vw
is to specify height as a percentage of width. You can't do this with percentage. ใsee CSS: Fixed Aspect Ratioใ In fact, it's useful to replace almost all CSS: Percentage Value byvw
, because the meaning of percentage is different for each CSS property. vh
- Equal to 1% of the height of the initial containing block.
vmin
- Equal to the smaller of vw or vh.
vmax
- Equal to the larger of vw or vh.
cm, mm, in, pc, pt
cm
-
centimeter. 10 mm โ ~0.3937 inch; ~37.795 px
Physical units such as
cm
is useful for specifying printed style. For example:@media print { table {font-size: 4cm} }
ใsee CSS: Media Queryใ
mm
- millimeter. 0.1 cm โ ~3.78 px
in
- Inch. 6 pc. 72 pt. 96 px. โ 2.54 cm
pc
- 1/6 inch. 12 pt. 16 px. โpcโ stands for โpicaโ. โ ~0.423 cm
pt
- 1/72 inch. (~0.0138 inch) ~1.33 px. โptโ stands for โpointโ. โ 0.3527 mm
What is CSS's Default Unit?
- There is no default unit. Omitting unit is syntax error.
- You can omit unit only when the value is 0.