2010-09-28 18 views
3

Je pense qu'il devrait exister une meilleure façon de le faire ...doute dans le sélecteur css> [#id (.class1 ou .class2)]

J'utilise le sélecteur de css suivi

#book_form .ano_chegada, #book_form .ano_partida {...} 

Html:

<form id="book_form"> 
<input class='ano_chegada' .../> 
<input class='ano_partida' .../> 
</form> 

Je n'aime vraiment pas répéter l'id du formulaire deux fois. Est-ce strictement nécessaire? Je sais que cela devrait fonctionner sans le second id (#book_form) mais il va sélectionner tous les éléments qui partagent la même classe (.ano_partida), non?

Merci =) (Obrigado, en portugais)

Salutation du Portugal

Répondre

2

Oui, il est strictement nécessaire si vous souhaitez sélectionner des éléments seulement avec les classes qui vivent à l'intérieur #book_form. CSS en lui-même ne dispose pas de sélecteurs imbriqués, mais certaines solutions côté serveur peuvent vous fournir des extensions CSS qui vous accordent une telle fonctionnalité.

+0

merci pour votre aide, économisez-moi beaucoup de temps à lire à ce sujet –

2

Vous pouvez ajuster votre HTML un peu pour faciliter l'utilisation des sélecteurs CSS. (Ce n'est pas nécessairement la peine, et pourrait augmenter la taille de votre sortie.)

Ajouter un autre nom de classe pour les balises de classe:

<form id="book_form"> 
<input class='ano_chegada something' .../> 
<input class='ano_partida something' .../> 
</form> 

#book_form .something {...} 

Ou diviser ce qui est là en plusieurs classes:

<form id="book_form"> 
<input class='ano chegada' .../> 
<input class='ano partida' .../> 
</form> 

#book_form .ano {...}