28173 sujets

CSS et mise en forme, CSS3

Bonjour à tous !

(J'espère que je post au bon endroit...)

J'ai un "petit" problème avec mon menu sous IE6 (étonnant ! Smiley cligne ), en ce qui concerne la transparence :

Mon menu à l'air de bien fonctionner sous Safari, FF, IE7 par contre sous IE6, si j'applique le script suivant :
a écrit :
/ JavaScript Document
// Correctly handle PNG transparency in Win IE 5.5 or higher.
// Optimization : Browser Detection by Sol@web - Updated on 06 September 2005
function correctPNG(){
for(var i=0; i<document.images.length; i++){
var img = document.images
var imgName = img.src.toUpperCase()
if (imgName.substring(imgName.length-3, imgName.length) == "PNG"){
var imgID = (img.id) ? "id='" + img.id + "' " : ""
var imgClass = (img.className) ? "class='" + img.className + "' " : ""
var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' "
var imgStyle = "display:inline-block;" + img.style.cssText
if (img.align == "left") imgStyle = "float:left;" + imgStyle
if (img.align == "right") imgStyle = "float:right;" + imgStyle
if (img.parentElement.href) imgStyle = "cursor:hand;" + imgStyle
var strNewHTML = "<span " + imgID + imgClass + imgTitle
+ " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";"
+ "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
+ "(src=\'" + img.src + "\', sizingMethod='scale');\"></span>"
img.outerHTML = strNewHTML
i = i-1
}
}
///// This part handles background png's (Koen Betsens)
for(i=0;i<document.all.length;i++){
bg=document.all[i].currentStyle.backgroundImage;
if(bg.toUpperCase().substr(bg.length-5,3)=='PNG'){
if(bg.search('%20')>0){bg=bg.replace('%20',' ')}
document.all[i].style.backgroundImage='none';
document.all[i].style.filter
//.item
="progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=true, sizingMethod=scale src='"+bg.substr(5,bg.length-7)+"')"
}
}
}

if (navigator.appName == "Microsoft Internet Explorer") {
window.attachEvent("onload", correctPNG);
}


la transparence fonctionne bien, MAIS les sous-sous menus n'apparaissent plus ! (ni pour IE7, d'ailleurs), si j'enlève ce script : mon menu est bon pour Safari, FF, IE7, IE6, par contre je n'ai plus la transparence sur ce dernier !

Alors comment faire pour que le script ne me fasse pas faire disparaître mes sous- sous menus dans IE ? Smiley sweatdrop

Voici le lien à mon site (en plein travaux Smiley confused ) : www.ineodys.com [/url]

Voilà, alors si quelqu'un a une idée, ou a déjà rencontrer ce problème....
Smiley biggrin
[/i][/i][/i]
Bonjour,

Je ne suis pas un pro, et j'ai du mal à suivre ton script...
Ceci dit, je gère la transparence assez simplement en CSS avec cette propriété compatible IE6 :
	filter:alpha(opacity=70);

Ici la transparence du bloc et de ses enfants sera à 70%...

Ensuite, j'ai trouvé les propriétés similaires pour les autres navigateurs :
	filter:alpha(opacity=70);
	-moz-opacity:0.7;
	opacity: 0.7;


Voilà, j'espère que ça te conviendra Smiley cligne
Modifié par yakou32 (28 Jul 2006 - 11:19)