CSS: refus de parenté...

Fermé
Utilisateur anonyme - 11 nov. 2007 à 15:28
 couac - 4 août 2008 à 11:57
Bonjour,
Bien que les questions ne me réussissent pas (héhé), je réessaie :-)

En CSS, est-il possible d'interdire la transmission des propriétés entre parent et enfant???

Le but du sujet:
Ayant 2 DIV imbriqués, le premier légèrement plus large que le second, ceci afin de créer une bordure translucide au second.
Je joue donc avec l'opacité du css et c'est là que ça coince ;-)
En effet, le second étant enfant du premier, il hérite des propriétés de son parent et du coup, mon div enfant se voit lui-aussi transparent.

La question est: est-il possible de refuser la dite parenté, afin que le div enfant reste opaque malgré que son parent soit tranlucide et si oui, comment???

J'ai essayé la soluce du png transparent, si cela marche nickel sous firefox et opera, ça pose un souci sous IE malgré l'additif pngfix...

Si vous avez une ébauche de solution (que je n'ai toujours point trouvée malgré mes recherches de hier), je suis preneur ;-)

Quoi qu'il en soit, merci de vous être arrêté sur cette petite bafouille
A voir également:

8 réponses

RAD ZONE Messages postés 5226 Date d'inscription samedi 20 janvier 2007 Statut Contributeur Dernière intervention 1 juin 2024 1 355
11 nov. 2007 à 16:08
SALUT

est-il possible de refuser la dite parenté
il semblerait que c est n est pas faisable !!? sauf quelque balise !

https://www.alsacreations.com/apprendre/

si c est faisable tu le trouvera ici http://www.cssplay.co.uk/ mais j en doute ??

pour le png je ne sais pas quel fix tu utilise ?? celui la fonctione bien sur ie6 et 5 sur cette page

le fix que j ai mis si tu le veux ?

RAD
0
M'ci pour la réponse, vais quand même essayer quelques trus de alsacreations (bien que tout cela ne parait pas simple) et que ce n'est pas vraiment dans le même objectif, mais sait-on jamais :-)

Le pngfix, c'est un que j'ai trouvé sur un message ici, si les zones transparentes sont bien transparentes sous IE6, il semble qu'une image toute bleue par exemple donne un bleu opaque et non transparent comme sous firefox ou opera...

Cela dit c'est con qu'on ne puisse pas refuser la parenté, ce serait bien pratique pour certains montages :-)
0
lookouster Messages postés 58 Date d'inscription lundi 13 août 2007 Statut Membre Dernière intervention 22 juillet 2008 2
11 nov. 2007 à 19:06
Salut
Je pense que pour contourner l'héritage, il te suffit de respécifier les propriétés dont tu veux ps que la balise fille hérite.
Ca doit pouvoir marcher en tant normal.
0
Merci, j'y ai pensé mais aucun navigateur n'en tient compte :-)
Vu que le div parent est à 20%, j'ai tenté 100% sur le div enfant et que dalle. J'ai essayé avec none: aucun effet, j'ai essayé voir si une table ne foutrait pas la merde dans l'héritage et toujours pas, j'ai essayé les instructions de alsacréations et aucune ne fonctionne pour la cause...
C'est désespérant :-)

Ferai encore un essai directement dans le fichier HTML des fois que ça ferait une différence (m'étonnerait mais bon), vu que là c'est un css externe.
0
Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 920 > king
11 nov. 2007 à 22:30
salut,

tous les navigateurs devraient l'appliquer…

il faut que tu joues sur le poids.
as-tu écrit tes sélecteurs avec l'ascendance en entier ?
tu pourrais mettre plus d'ascendant pour le contenu que le contenant, surtout s'il y a un 'id' dans les ancêtres.

sinon, embarquer le style dans la balise ça le rend prioritaire sur tout.
si cela ne fonctionne pas c'est un problème de propriété.

as-tu essayé avec d'autres propriétés pour savoir si c'est spécifique à celle que tu vises ?
0
Bonjour,
Ben je vais essayer direct dans la balise (ça j'ai pas encore fait, suis tombé endormi héhé), pour l'instant je n'ai essayé qu'à partir du fichier css.
Ca fonctionne avec des "id", mais j'ai tenté le coup avec une "class", ce qui n'a rien changé...
Heu je vois point ce que tu entends par "il faut que tu joues sur le poids."???
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 920
11 nov. 2007 à 23:07
par exemple une classe pèse moins qu'un identifiant !
lol

pour l'explication je ne pourrais pas faire mieux qu'Open Web !

je pense que c'est à cause de ça.
tu peux en premier essayer l'attribut 'style' (et pan 1000 d'un coup, imbattable !), si cela fonctionne y plus qu'à déménager vers la feuille et ajouter des ancêtres au sélecteur (surtout identifiants).

(on parle aussi de priorité des sélecteurs, je trouve que le poids est plus parlant.)
0
ah vi, j'avais pas compris ce que le poids venait faire là dedans :-))
0
Gihef Messages postés 5150 Date d'inscription mercredi 20 juillet 2005 Statut Contributeur Dernière intervention 20 février 2023 2 775
11 nov. 2007 à 23:40
Bonjour à tous,

Dans une discussion récente, j'ai proposé une solution de contournement.
Pas parent, pas enfant directement, un bloc extérieur en absolute par dessus.

Est-elle adaptée à ta demande…
  ???

--
0
Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016 920
11 nov. 2007 à 23:50
salut boss !

toi qui as testé, 'opacity' et cascade ne font pas bon ménage ?

on ne peut pas assigner une nouvelle valeur à la propriété héritée ?

c'est peut être encore trop compliqué pour nos chers navigateurs…
0
Gihef Messages postés 5150 Date d'inscription mercredi 20 juillet 2005 Statut Contributeur Dernière intervention 20 février 2023 2 775 > Dalida Messages postés 6728 Date d'inscription mardi 14 mai 2002 Statut Contributeur Dernière intervention 11 janvier 2016
12 nov. 2007 à 00:08
Aujourd'hui, ça serait plutôt bosses (-;

La 2e div, .pastransparent, de mon exemple, a une opacity à 1.
Elle hérite de la précédente opacity à 0.6.
Je n'ai pas réussi à le contourner autrement qu'en la sortant de la 1re.

Par contre, on peut ajouter de la transparence à .pastransparent, en baisser l'opacity.

--
0
Merci, ça j'avais essayé aussi (c'est d'ailleurs comme ça pour l'instant), ça marche mais le problème est que si je fais ça, mon div "cadre" ne suit pas le div "contenu" si ce dernier s'allonge. D'où mon idée (apparemment stupide) d'imbriquer "contenu" dans "cadre" et d'empêcher "contenu" d'hériter des propriétés de "cadre", mais là apparemment, y a pas moyen :-)

autre soluce est de trouver un pngfix qui permettrait de rendre une image colorée transparente pour IE, car la ça fonctionne impec pour firefox et opera mais évidemment IE6 n'en veut pas.
0
Gihef Messages postés 5150 Date d'inscription mercredi 20 juillet 2005 Statut Contributeur Dernière intervention 20 février 2023 2 775 > king
12 nov. 2007 à 00:45
Je ne trouve pas ça stupide. Plutôt logique.
Et parfois utile.
Mais personne ne semble savoir faire ici…

--
0
king > Gihef Messages postés 5150 Date d'inscription mercredi 20 juillet 2005 Statut Contributeur Dernière intervention 20 février 2023
12 nov. 2007 à 12:29
je creuse une piste via javascript qui, me semble t-il, sait aussi gérer l'opacité (donc je repotasse mes cours :-).
Ca permettrait d'avoir l'effet sans le souci d'héritage CSS héhé...
0
pas de nouvelles la desus j'ai exactement le meme probleme que vous ....

j'ai une image de fond et j'aimerais faire un tableau a fond transparent mais tout le texte ecrit au dessus du <td> ne s'affiche pas du tout meme pas en transparent ..........
0
L'opacité du calque fils est 100%.... de celle du parent, soit 40%
Monte à 250% pour voir.
0