I just stumbled upon the use of overflow:hidden
on html
, which seems illogical to me:
* { all: unset; display: revert; } html { height: 100vh; overflow: hidden; background: black; } body { height: 50vh; font-size: 5rem; background: white; scroll-snap-type: y mandatory; scroll-behavior: smooth; overflow-y: scroll; }
Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.
This is about moving the scroll box from html
to body
but I don't understand why this example only works for overflow:hidden
? The height of body
is already only 50vh
, so there should be no overflow on the html
element, right?
From Specification:
Setting overflow on
html
will disable propagation and preserve overflow on the body element