@mplungjan удалил и обновил мое решение, чтобы добавить границы (и я не downvoter)

с: Есть ли в 2018 году какая-либо конструкция CSS, которая бы скрывала элементы div с использованием селектора, а затем отображала бы конструкцию, содержащую определенный селектор?

Я отмечал это как обман

Селектор CSS: если Контейнер пуст -> display: none;

Код будет

div { border: 1px solid black; text-align:center; width:400px }
div[id*="accordion_prop_floor_plans"]:empty { display:none }
<div id="accordion_prop_floor_plans_1"></div>
<div id="accordion_prop_floor_plans_2"><img src="https://via.placeholder.com/350x150&text=image" title="image here" /><br/>Plan 2</div>
<div id="accordion_prop_floor_plans_3"></div>

Тогда я понял, что может быть другой вариант использования.

Скрыть div, которые не имеют определенного элемента. Или покажи, что делают.

Я пытался:has()на основеЕсть ли родительский селектор CSS?

но он не работает ни в одном браузере с 2018 года

div { border: 1px solid black; text-align:center; width:400px }
div[id*="accordion_prop_floor_plans"] { display:none }
div[id*="accordion_prop_floor_plans"]:has(> img) { display:block }
<div id="accordion_prop_floor_plans_1">Plan 1</div>
<div id="accordion_prop_floor_plans_2"><img src="https://via.placeholder.com/350x150&text=image" title="image here" /><br/>Plan 2</div>
<div id="accordion_prop_floor_plans_3">Plan 3</div>

Я могу сделать это в JS легко:

document.querySelector('div[id*="accordion_prop_floor_plans"]>img').parentNode.style.display="block";
div { border: 1px solid black; text-align:center; width:400px }
div[id*="accordion_prop_floor_plans"] { display:none }
<div id="accordion_prop_floor_plans_1">Plan 1</div>
<div id="accordion_prop_floor_plans_2"><img src="https://via.placeholder.com/350x150&text=image" title="image here" /><br/>Plan 2</div>
<div id="accordion_prop_floor_plans_3">Plan 3</div>

Ответы на вопрос(1)

Ваш ответ на вопрос