White spaces in trick many into writing complex — web development is trollish that way. Firefox’s developer tools show generated white spaces! Hopefully your abstraction is munging HTML faithfully. It’s easy to fight white spaces without realising it. That generally leads to using unsuitable display types and other shenanigans.