I tried that once and it was great until I used overflow: hidden, I don't know why but everything was still visible. After I tried everything I added a wrapper it worked. Why I didn't used it in the first place was that website was a assignment that couldn't use div, only semantic structure. I wouldn't do that if you don't have that requirement.