Sélectionnez un enfant pair, à l'exclusion de l'enfant caché

Entre la ligne 2 et 3 est caché <div> . Je ne veux pas que l'on soit pris dans la odd/even css règle.
Quelle serait la meilleure approche pour obtenir que cela fonctionne? http://jsfiddle.net/k0wzoweh/

Sélectionnez un enfant pair, à l'exclusion de l'enfant caché

<style>
.box:not(.hidden):nth-child(even) {background: green}
.box:not(.hidden):nth-child(odd) {background: orange}
.hidden {display:none;}
</style>
<div class="wrap">
    <div class="box">xx</div>
    <div class="box">xx</div>
    <div class="box hidden">xx</div>
    <div class="box">xx</div>
    <div class="box">xx</div>
    <div class="box">xx</div>
    <div class="box">xx</div>
</div>

Remarque: Il peut y avoir plusieurs hidden éléments.

source d'informationauteur caramba