В IE6 абзац, следующий за пустым абзацем, отображается с цветом фона пустого абзаца, что, я думаю, неверно! В Firefox он работает правильно, но я не проверял IE7.
Есть ли CSS решение этой проблемы или мне нужно удалить пустой элемент?
(Я бы предпочел не удалять пустые элементы, так как это предполагает написание кода для проверки, является ли каждый элемент пустым перед его выводом)
Поведение остается неизменным с использованием строгих или переходных типов документов (добавил этот комментарий в ответ на ответы)
Интересно, что эффект не возникает с цветом текста, только с цветом фона.
<html>
<head>
</head>
<body>
<p style='background-color:green'>Green content</p>
<p style='background-color:red'>Red content</p>
<p>Unstyled background working because previous red element is not empty</p>
<p style='background-color:green'>Green content</p>
<p style='background-color:red'></p>
<p>Unstyled background broken because previous red element is empty</p>
<p style='color:green'>Green content</p>
<p style='color:red'>Red content</p>
<p>Unstyled text color working because previous red element is not empty</p>
<p style='color:green'>Green content</p>
<p style='color:red'></p>
<p>Unstyled text color working even though previous red element is empty</p>
</body>
</html>