211 votes

Comment faire un fond semi-transparent ?

J'ai besoin de rendre un fond blanc transparent à 50% sans que cela n'affecte quoi que ce soit d'autre. Comment dois-je m'y prendre ?

0 votes

Voici un lien vers un article qui décrit la méthode d'implémentation de la transparence à l'aide de CSS. domedia.org/oveklykken/css-transparency.php Attention toutefois, il semble que la prise en charge par plusieurs navigateurs puisse poser problème, ce qui pourrait vous amener à modifier votre mise en œuvre.

3 votes

Voulez-vous dire comment définir l'opacité de l'arrière-plan d'un div sans affecter les éléments imbriqués ?

0 votes

377voto

Tarun Points 1744

Utilisez rgba() :

.transparent {
  background-color: rgba(255,255,255,0.5);
}

Vous obtiendrez ainsi une opacité de 50 %, tandis que le contenu de la boîte continuera à avoir une opacité de 100 %.

Si vous utilisez opacity:0.5 le contenu sera estompé ainsi que l'arrière-plan. Ne l'utilisez donc pas.

3 votes

Oui, IE supporte rgba, sa syntaxe est #ARGB et s'écrit comme suit : filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#AARRGGBBAA,endColorstr=#AARRGGBBAA) ; c'est en fait un gradient d'une couleur statique mais avec transparence.

0 votes

Changement background: con background-color:

0 votes

background-color n'est pas plus correct que background .

4voto

Joacim Nitz Points 56

Bon à savoir

Certains navigateurs web ont des difficultés à rendre le texte avec des ombres sur un fond transparent. Vous pouvez alors utiliser une image PNG 1x1 semi-transparente comme arrière-plan.

Note

N'oubliez pas que IE6 ne prend pas en charge les fichiers PNG.

2 votes

IE6 supporte les PNG, même transparents : filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=true, sizingMethod=scale, src='/filename.png') ;

0 votes

@manmal mais où mettez-vous votre correctif IE ? Directement dans le fichier .css du site ?

1 votes

@Thalatta oui, essayez-le.

3voto

Windows Warrior Points 41

NE PAS utiliser un PNG 1x1 semi transparent. Donnez au PNG une taille de 10x10, 100x100, etc. Tout ce qui a un sens pour votre page. (J'ai utilisé un PNG de 200x200 et il ne faisait que 0,25 kb, donc il n'y a pas de réel souci de taille de fichier ici).

Après avoir consulté cet article, j'ai créé ma page web avec 3 PNG de 1x1 avec une transparence variable.

Dreamweaver CS5 était en chute libre. J'avais des flashbacks vers DOS ! !! Apparemment, chaque fois que j'essayais de faire défiler, d'insérer du texte ou de faire quoi que ce soit, DW essayait de recharger les zones semi-transparentes 1x1 pixel à la fois ... YIKES !

L'assistance technique d'Adobe ne savait même pas quel était le problème, mais m'a dit de reconstruire le fichier (cela a fonctionné sur leurs systèmes, soit dit en passant). Ce n'est que lorsque j'ai chargé le premier PNG transparent dans le fichier css que la doc a replongé.

Puis j'ai trouvé un message sur un autre site d'aide à propos des PNG qui font planter Dreamweaver. Augmentez la taille de votre PNG ; il n'y a aucun inconvénient à le faire.

13 votes

Redimensionner un PNG juste parce que votre outil est tellement merdique qu'il ne le supporte pas ? Vraiment...

0voto

prat1kk Points 25

Background:rgba(255,255,255,0.5) ; est suffisant pour que le fond soit fait correctement.

Je l'ai appliqué au plugin jquery image slideshow. Cela fonctionne bien.

-2voto

Chandu Points 40028

Essayez ça :

.transparent
{ 
  opacity:.50;
  -moz-opacity:.50; 
  filter:alpha(opacity=50); 
}

12 votes

Le contenu aura également une opacité de 50 %.

0 votes

Cela peut être facilement corrigé par le css : .transparent * { opacity:1; } à moins que, par exemple, un élément avec l'attribut transparent La classe a un code html interne

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X