28173 sujets

CSS et mise en forme, CSS3

Bonsoir les gens du bled d'ici,

Je pose la question à tout hasard, mais sans trop d'espoir, car je viens de reconsulter la référence CSS 2.1, ans y avoir trouvé ce que j'y recherchais. Mais peut-être mon ignorance me jout-elle un mauvais tour.

Donc voilà : j'aimerais pouvoir utiliser des opérateurs logique dans les selecteurs. Un exemple sera plus parlant.

Soit : <element class"class1 class2 class3">...</element>

Je voudrais un selecteur qui donne par exemple un style aux éléments qui ont la classe class1 et la classe class3.

Je pensais à quelque chose comme element[class~="class1 & class3"], mais ça ne fonctionne pas. Même si ça ne fonctionne pas, peut-être que l'idée que j'avais vous aidera à comprendre ce que je recherche.

Est-ce possible ou pas ?

Si cela s'avérait possible, alors ce serait vraiment merveilleux... et si j'avais la preuve que c'est impossible, alors je serais un peu dépité, mais ça ira Smiley langue

Oilà, et merci
Modifié par hibou57 (01 Nov 2007 - 00:44)
.... finalement j'ai trouvé une autre solution : j'exprime la même logique autrement. Désolé d'avoir posté pour rien.

Bonne soirée à toutes et tuites
Salut,

Ce qui serait bien, vu qu'Alsacréations tire toute sa force de son esprit de partage communautaire, ce serait que tu expliques quelle est cette autre solution, pour toute éventuelle personne qui chercherait à faire quelque chose de similaire. Ce post ne serait pas inutile comme tu sembles le penser.

Merci de ta compréhension. Smiley cligne
Modifié par Mikachu (01 Nov 2007 - 01:03)
Beh je décompose la logique en deux, ....

Pour le "and" je déclare des règles pour class1 et des règles pour class3, et quand je met les deux classe dans un élément, ça fait un "and".

C'est parce que je modifiais un CSS, et j'avais encore l'esprit pris entre l'ancienne et la nouvelle structure. J'ai été vraiment idiot de ne pas l'avoir vu.

Pour le "or" il faut seulement dupliquer les règles, par exemple ici les dupliquer dans class1 et class3.

Pour le "not", je ne sais pas, et c'est bien là que ça coince. Ou alors peut-être de déclarer des règles pour tout les élément avec le selecteur universel, et ensuite déclaré les règles équivalent mais en négatif pour une certaine classe. Mais ça me semble un peu lourd, et en plus ça pourrait entrer en conflit avec les bug de certains navigateurs.

Voilà.

Sachant que la l'algèbre booléen stipule que toute les fonctions logique peuvent être construite à partir de "or", "and" et "not", alors on peut appliquer toutes les règles logiques en CSS.

Mais il va de soit que le code résultant est particulièrement difficile à maintenir pour un être humain, et que ceci s'appliquera de préférence à la génération automatique de CSS, passant par exemple par un langage intermédire, ex. un CSS étendu qui ce compilerait en CSS standard, à l'instant de le diffuser.

Oilà Smiley smile

..... en fait je n'ai pas eu spontanément le coeur à exposer la méthode, vu le peu de considération dont j'ai put bénéficier ici lors d'une précédente demande il y a quelques temps.

(pour la parenthèse)

Modifié par hibou57 (01 Nov 2007 - 02:35)