HTML
To make websites we use basic building blocks called HTML elements, some of the most common being SPAN and DIV.
SPAN and DIV are similar in that they don’t represent anything specific - or rather that the website maker can decide what they represent. At the same time they are very different in nature - SPAN is an inline element (bound to a line of text, similar to a word in a piece of text) and DIV is a block (imagine an image that the page text is flowing around freely).
This different nature means that SPAN and DIV sometimes don’t play nicely with each other. As the website design evolves and the complexity gets out of hand, these elements can end up conflicting rather badly, especially if you are an inexperienced website maker.
The image above depicts how I feel working with these elements looks like.