Я бы хотел назначить стиль для элемента HTML - но только в том случае, если в теге задано некоторое содержимое.
Возможно ли это с использованием чистого CSS?В идеале я бы хотел избежать JS или серверных изменений в структуре самого HTML.
CSS3 имеет :empty псевдо-класс .
:empty
Я не вижу никакого способа сделать это в чистом CSS2.1.
Вы можете сделать это с помощью CSS3 путем объединения псевдоклассов :not и :empty. Для браузеров, которые не поддерживают оба, вам нужно использовать JS или серверное решение.
:not
div:not(:empty) { background-color:blue; }