handles void elements better