Non mi risulta che si possa fare con i CSS. Servirebbe un connettore "padre" (simmetrico del >), che non esiste.
Quello che puoi fare e` inserire una classe diversa, oppure uno stile in linea a seconda di cosa contiene il blocco. Questo lo puo` fare qualsiasi programma lato server o CMS (credo che per te sia jQuery)
Esempio (posto il codice che deve arrivare al brwoser: sta poi a te fare in modo che ci arrivi correttamente - eventualmente chiedi nel forum dove trattano iltuo linguaggio):
codice:
HTML 1:
<div id="padre" class="neHa2">
<div class="figlio1">
contenuto del blocco figlio1 </p>
</div>
<div class="figlio2">
contenuto del blocco figlio2 </p>
</div>
</div>
HTML 2:
<div id="padre" class="neHa1">
<div class="figlio1">
contenuto del blocco figlio1 </p>
</div>
</div>
ecc.
CSS (in questo esempio e` unico per tutti i casi):
#padre {
... le varie formattazioni comuni ...
}
.neHa2 {
width: 250px;
}
.neHa1 {
width: 200px;
}
ecc
Nota che ci sono anche altre soluzioni :
Esempio 2
codice:
HTML 1:
<div id="padre" style="width: 250px;">
<div class="figlio1">
contenuto del blocco figlio1 </p>
</div>
<div class="figlio2">
contenuto del blocco figlio2 </p>
</div>
</div>
HTML 2:
<div id="padre" style="width: 200px;">
<div class="figlio1">
contenuto del blocco figlio1 </p>
</div>
</div>
ecc.
E si puo` anche pensare di modificare il CSS dal programma lato server, ma risulta un po' piu` complesso (e non tutti i CMS sono in grado di farlo)