28172 sujets

CSS et mise en forme, CSS3

Bonjour, je développe une "modal box" et j'ai donc besoin de créer une une div transparente qui prend tout l'écran.

Ca fonctionne très bien sur Chrome, Opera, Firefox, Safari etc mais IE8 la dic reste opaque....

Je ne trouve pas la solution.... Voici mon code :


#voile {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #000000;
	background: rgba(0, 0, 0, 0.7);
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	-webkit-opacity: 0.7;
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
	opacity: 0.7;
	display: none;
	z-index: 100;
}


Vous avez une solution ?

Merci !
si tu développe ta modal dans jquery par exemple, gère la transparence directement dans jquery... ca t'évitera bien des tracas Smiley smile
Hello,

Tu as donc:
filter: alpha(opacity=70);
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);

La première déclaration de filter va être écrasée par la seconde (troisième ligne). Or, la syntaxe pour la valeur de la troisième déclaration est invalide en CSS, et sera ignorée par IE8.

À ma connaissance IE8 comprend correctement la première ligne et la deuxième ligne, mais pas la troisième qui vient mettre le bazar. Utiliser filter: alpha(opacity=70); uniquement est peut-être une solution.
Justement c'est les deux règles


-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)"; 
filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);


sont sensé etre un hack IE8 même sens ça ca ne fonctionne pas Smiley ohwell
Avec un vrai IE8? (Pas IETester ou autre version standalone: un IE8 natif ou virtualisé uniquement.)
Sur une page en mode de rendu standards IE8?

Je testais il y a deux jours sur cette page du site de Peter-Paul Koch et IE8 comprenait la syntaxe filter:alpha(), et la syntaxe -ms-filter:"...". La syntaxe avec -ms-filter mais sans quotes autour de la valeur n'existe pas à ma connaissance. Smiley ohwell