JeuWeb - Crée ton jeu par navigateur
Courcircuiter le CSS général ? - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : Courcircuiter le CSS général ? (/showthread.php?tid=445)

Pages : 1 2


Courcircuiter le CSS général ? - Argorate - 11-01-2011

Bonsoir,

Voilà j'ai un petit doute sur ce qui est possible ou non en CSS, donc j'ai besoin d'avis extérieur:

J'ai un fichier CSS qui contient un body{}, jusqu'a là, normal.
Mais j'ai une page particulière qui nécessite un body particulier.
Du coup la seule méthode que j'ai trouvé pour " courcircuiter " le CSS général c'est d'écrire en dur dans la page en question. C'est plutôt moche, car on perd tout l'intérêt de la mise en cache du CSS!
De plus, mon body de base a un bg-image, et ma page spécial nécessite un bg-color, mais si j'applique le bg-color (même en dur), le bg-image est par dessus, du coup je suis obligé de créé une image avec une couleur uni pour remplacer le bg-image original... Vous m'avez suivit? ^^

Bref s'est pas propre et ça m'embête et je n'arrive pas à faire autrement, une idée?

Merci.


RE: Coursecuiter le CSS général? - Sephi-Chan - 11-01-2011

Tu peux ajouter une classe à ta balise body. Ainsi dans la définition du style body.special, tu peux surcharger les propriétés que tu souhaites.


Sephi-Chan


RE: Coursecuiter le CSS général? - Holy - 11-01-2011

Si je comprends bien ton soucis, vu que c'est la propriété qui vient en dernier qui est retenue, il suffit simplement de placer ces propriétés dans un deuxième fichier CSS que tu insères après le premier ^^ (<link>).

Edition : La solution de Séphi me semble plus intéressante, de fait Smile


RE: Courcircuiter le CSS général ? - Argorate - 11-01-2011

Impec sephi, j'avais fais body .bg_galaxie{background-image:none; background-color:#000000;}, mais comme tu me l'as fais remarqué sur MSN, ça marche mieux sans l'espace Big Grin

body.bg_galaxie{...} Wink

Thx.


RE: Coursecuiter le CSS général? - php_addict - 11-01-2011

très étrange ta question...

pour tes pages "standard":


<link rel="stylesheet" type="text/css" href="style.css" />

pour ta page "spéciale":


<link rel="stylesheet" type="text/css" href="mon_style_vachement_special.css" />

si tu utilise un ersatz de modèle MVC alors tu créé une vue standart et une vue spéciale

non ?


RE: Courcircuiter le CSS général ? - Argorate - 11-01-2011

Inclure des css différent, juste pour un seul truc qui change c'est un peu abusé, non il suffisait de savoir que la surcharge d'un élément s'écrit sans mettre d'espace.. et voilà Smile

merci.


RE: Coursecuiter le CSS général? - Sephi-Chan - 11-01-2011

(11-01-2011, 01:16 AM)Holy a écrit : vu que c'est la propriété qui vient en dernier qui est retenue

C'est faux (dans une certaine mesure). Un peu de lecture (en français pour une fois !) : OpenWeb - Cascade CSS et priorité des sélecteurs.



Sephi-Chan


RE: Courcircuiter le CSS général ? - niahoo - 11-01-2011

(11-01-2011, 01:21 AM)Argorate a écrit : Inclure des css différent, juste pour un seul truc qui change c'est un peu abusé, non il suffisait de savoir que la surcharge d'un élément s'écrit sans mettre d'espace.. et voilà Smile

merci.

Mais pas forcément, tu peux aussi faire le choix d'indiquer une URI vers un css différent selon la requête appelée, alors que la solution retenue ici serait d'ajouter au CSS global des définitions spécifiques à seulement quelques page.

D'un côté c'est alourdir ton CSS, d'un autre, une fois celui-ci chargé, la différence de temps de chargement et de charge serveur serait nulle.

Mais ça peut rester une solution tout à fait logique, déterminer une page CSS à indiquer selon la requête demandée ne coûte rien ; « Inclure des css différent, juste pour un seul truc qui change » je ne trouve pas cela « abusé ».

Sinon, la solution d'ajouter des définitions au CSS global sera la plupart du temps la plus simple, avec des inconvénients comparables de près à une autre solution, ou plus souvent moindres.


RE: Coursecuiter le CSS général? - Holy - 11-01-2011

(11-01-2011, 01:24 AM)Sephi-Chan a écrit :
(11-01-2011, 01:16 AM)Holy a écrit : vu que c'est la propriété qui vient en dernier qui est retenue

C'est faux (dans une certaine mesure). Un peu de lecture (en français pour une fois !) : OpenWeb - Cascade CSS et priorité des sélecteurs.



Sephi-Chan
Mh, je parlais dans la mesure où ses propriétés s'appliquaient au sélecteur "body" ^^

Mais tu fais bien de le préciser :p


RE: Courcircuiter le CSS général ? - Ter Rowan - 11-01-2011

n'empêche que la solution de Sephi a le mérite de répondre au besoin en gardant sans alourdir un seul fichier css

pour quelque chose de si réduit (juste deux propriétés pour une seule balise) ça me parait top.

en plus j'ai appris un truc, je ne savais pas qu'on pouvait donner des classes au body ^^