Cómo mostrar un elemento oculto si solo existe un elemento secundario específico CSS @

Pregunta ¿Hay en 2018 alguna construcción CSS que oculte divs usando un selector y luego muestre una que contenga un selector específico?

Estaba marcando esto como un engañado

CSS Selector: si un contenedor está vacío -> pantalla: ninguna;

Code sería

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>

Entonces me di cuenta de que podría haber otro caso de uso.

Hide divs que no tienen un elemento determinado. O mostrar divs que lo hacen.

Lo intenté:has(), Residencia en ¿Hay un selector padre CSS?

pero aún no funciona en ningún navegador a partir de 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>

Puedo hacerlo fácilmente en 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>

Respuestas a la pregunta(1)

Su respuesta a la pregunta