Well, as the title says: is it consider as bad practice to use empty divs to style the page? of course if it's performance wise(instead of using images for example).
And second question is: is there any difference between div(as block element) and span(as block element) in any term of performance or anything else?
To answer your first question bluntly, yes. If you are resorting to using empty
divs to style a page, you need to learn more about the features that CSS provides. Given enough thought, you should be able to set up appropriate
line-heights to make that happen. Or start working on a
And for your second question, all elements are basically the same. But we appropriate different semantics to provide meaning. Quoted from SO: What is the difference between HTML tags
- But in modern HTML all elements are supposed to have meanings: a
<p>is a paragraph, an
<li>is a list item, etc., and we're supposed to use the right tag for the right purpose -- not like in the old days when we indented using
<blockquote>whether the content was a quote or not.
- So, what do you do when there is no meaning to the thing you're trying to do? There's no meaning to a 400px-wide column, is there? You just want your column of text to be 400px wide because that suits your design.
- For this reason, they added two more elements to HTML: the generic, or meaningless elements
<span>, because otherwise, people would go back to abusing the elements which do have meanings.