The shrinking font problem occurs when nested elements repeatedly calculate their font sizes in ems. Each child inherits its parent’s already-reduced size, so text becomes progressively smaller. section 2.2.1
With a 16px body size and ul { font-size: 0.8em; }, the first list calculates to 12.8px, the next to 10.24px, and the third to 8.192px. The selector affects every nested list, so the reduction compounds down the tree. section 2.2.1
Keeping nested lists readable
Retain a smaller top-level list size, then reset nested lists to the inherited size: ul { font-size: 0.8em; } and ul ul { font-size: 1em; }. Nested lists remain consistent instead of shrinking at every level.
