2010-07-29 7 views
0

J'essaie de décider de la meilleure approche pour implémenter la majorité des styles CSS sur ma page. Les 2 approches que j'ai reconnues sont les suivantes:Quelle est la meilleure approche pour implémenter des styles CSS?

1) Pour fixer un attribut de classe à la plupart des éléments et le style de chaque classe comme ceci:

fieldset.MyForm { } 
legend.MyForm { } 

2) Pour fixer des attributs de classe aux éléments conteneurs et éléments imbriqués de style comme si:

.MyForm fieldset { } 
.MyForm legend { } 

de mon expérimentation avec les deux approches:

1) semble plus précis, avec moins de chance de indésirables ou ayant des héritages t o remplacer les classes existantes pour obtenir un style de travail mais puisque les styles ne sont pas partagés, je dois les redéfinir continuellement. 2) est plus élégant d'un point de vue backend, car je n'ai pas besoin de définir des attributs de classe partout, mais nécessite parfois de définir .Classes .of.Increasing .Depth pour remplacer les styles existants en raison de la spécificité CSS. Quelle est la meilleure approche en termes de lisibilité/évolutivité/maintenabilité du code?

Quelle est la meilleure approche en termes de lisibilité/évolutivité/maintenabilité? Y a-t-il une autre meilleure approche que je n'ai pas identifiée?

Merci

+0

Je ne sais pas pourquoi vous rencontrez le problème avec la spécificité de l'approche 2, pouvez-vous poster un exemple spécifique ou deux? – robertc

Répondre

0

Pour attacher des attributs de classe à des éléments de conteneur.

Faites-le naturellement, écrivez moins. Il est préférable que vous définissiez le sélecteur par la hiérarchie, et non par chaque attribut.

+0

Voulez-vous dire que je devrais définir le chemin de la classe/de l'élément pour chaque style, comme .MyForm .MyInput fieldset legend {}? – Tom

+1

@Tom Avez-vous des légendes en dehors des fieldsets? Avez-vous des légendes dans .MyInput mais pas dans .MyForm? J'ai du mal à comprendre pourquoi votre règle n'est pas juste .MonInput legend {}. – robertc

Questions connexes