Too many DOM Elements
Another big problem with responsive design is hiding and revealing elements based on the current viewport resolution.
Often, the display: none
CSS attribute is used to hide the element. It has the effect that you'd expect—it hides the element from the DOM. Being hidden doesn't mean that it's not being rendered in the background.
Hiding an image, for instance, will still make an HTTP request, adding to the load time of your website. Ways to work around this will be discussed in more detail in the next chapter.