css: display none vs visibility hidden: display: none is really like the element does not exist. Visibility hidden just hides it but it still takes space. A display: none element can still have size and be coloured with a background image. It still doesn't take space. This can be used for a timeline bar for example!