Forum-webmaster
Technique - programmation => HTML / CSS / XHTML => Message commencé par: Christophe Cherel le le 20-02-2003 a 10:24:58

Titre: lien htm qui s'allume et s'éteint doucement en rollover
Posté par: Christophe Cherel le le 20-02-2003 a 10:24:58

Il existe un CSS qui permet de faire du Fade-in / Fade out en rollover sur les liens html pour Explorer5.5. Quelqu'un sait faire ça ?

Pour exemple, voyez cette page :
http://divxstation.com/softwareId.asp?sId=163

Titre: Re:lien htm qui s'allume et s'éteint doucement en rollover
Posté par: Shain le le 20-02-2003 a 14:52:30

Arf j'ai vu ca quelque part mais je ne sais plus ou ...

Titre: Re:lien htm qui s'allume et s'éteint doucement en rollover
Posté par: DriverZ le le 20-02-2003 a 15:29:44

Sur l'exemple que tu donnes, ils utilisent un javascript:

il suffit de l'insérer dans le HEAD et cela agit sur tout tes liens de ta page:
exemple sur:
http://www.euracar.com/fade.htm

Titre: Re:lien htm qui s'allume et s'éteint doucement en rollover
Posté par: POde.uk le le 20-02-2003 a 16:14:18

ca fait un peu énormément de script ;D

Titre: Re:lien htm qui s'allume et s'éteint doucement en rollover
Posté par: DriverZ le le 20-02-2003 a 16:22:55

tu m'étonnes ;D ;D ;D

La page vièrge fait déja 3,5Ko..... Y a de quoi avoir envie de faire un autre effet ;D

Titre: Re:lien htm qui s'allume et s'éteint doucement en rollover
Posté par: POde.uk le le 20-02-2003 a 20:29:56

vi ;D

Titre: Re:lien htm qui s'allume et s'éteint doucement en rollover
Posté par: drunkenmaster68 le le 20-02-2003 a 23:01:54

C'est clair que c'est assez repoussant comme script ! ;D

Titre: Re:lien htm qui s'allume et s'éteint doucement en rollover
Posté par: FireLink le le 22-02-2003 a 02:55:33

Regardez la source du thème subsilver de phpbb... vous allez trouver c sur... il y a des fade out... et c en CSS je crois

Titre: Re:lien htm qui s'allume et s'éteint doucement en rollover
Posté par: DriverZ le le 22-02-2003 a 12:04:09

J'ai jeté un oeil sur phpbb mais malheureusement, c'est encore du javascript:

<script LANGUAGE="JavaScript">
/*************
**** <config>
**/
startColor = "#8BC7FF"; // MouseOut link color
endColor = "#FFFFFF"; // MouseOver link color

stepIn = 20; // delay when fading in
stepOut = 20; // delay when fading out

/*
** set to true or false; true will
** cause all links to fade automatically
***/
autoFade = true;
/*
** set to true or false; true will cause all CSS
** classes with "fade" in them to fade onmouseover
***/
sloppyClass = true;
/**
**** </config>
**************/
/*************
**** <install>
**
**
**** </install>
**************/

hexa = new makearray(16);
for(var i = 0; i < 10; i++)
hexa = i;
hexa[10]="a"; hexa[11]="b"; hexa[12]="c";
hexa[13]="d"; hexa[14]="e"; hexa[15]="f";

document.onmouseover = domouseover;
document.onmouseout = domouseout;

startColor = dehexize(startColor.toLowerCase());
endColor = dehexize(endColor.toLowerCase());

var fadeId = new Array();

function dehexize(Color){
var colorArr = new makearray(3);
for (i=1; i<7; i++){
for (j=0; j<16; j++){
if (Color.charAt(i) == hexa[j]){
if (i%2 !=0)
colorArr[Math.floor((i-1)/2)]=eval(j)*16;
else
colorArr[Math.floor((i-1)/2)]+=eval(j);
}
}
}
return colorArr;
}

function domouseover() {
if(document.all){
var srcElement = event.srcElement;
if ((srcElement.tagName == "A" && autoFade) || srcElement.className == "fade" || (sloppyClass && srcElement.className.indexOf("fade") != -1))
fade(startColor,endColor,srcElement.uniqueID,stepIn);
}
}

function domouseout() {
if (document.all){
var srcElement = event.srcElement;
if ((srcElement.tagName == "A" && autoFade) || srcElement.className == "fade" || (sloppyClass && srcElement.className.indexOf("fade") != -1))
fade(endColor,startColor,srcElement.uniqueID,stepOut);
}
}

function makearray(n) {
this.length = n;
for(var i = 1; i <= n; i++)
this = 0;
return this;
}

function hex(i) {
if (i < 0)
return "00";
else if (i > 255)
return "ff";
else
return "" + hexa[Math.floor(i/16)] + hexa[i%16];}

function setColor(r, g, b, element) {
var hr = hex(r); var hg = hex(g); var hb = hex(b);
element.style.color = "#"+hr+hg+hb;
}

function fade(s,e, element,step){
var sr = s[0]; var sg = s[1]; var sb = s[2];
var er = e[0]; var eg = e[1]; var eb = e[2];

if (fadeId[0] != null && fade[0] != element){
setColor(sr,sg,sb,eval(fadeId[0]));
var i = 1;
while(i < fadeId.length){
clearTimeout(fadeId);
i++;
}
}

for(var i = 0; i <= step; i++) {
fadeId[i+1] = setTimeout("setColor(Math.floor(" +sr+ " *(( " +step+ " - " +i+ " )/ " +step+ " ) + " +er+ " * (" +i+ "/" +
step+ ")),Math.floor(" +sg+ " * (( " +step+ " - " +i+ " )/ " +step+ " ) + " +eg+ " * (" +i+ "/" +step+
")),Math.floor(" +sb+ " * ((" +step+ "-" +i+ ")/" +step+ ") + " +eb+ " * (" +i+ "/" +step+ ")),"+element+");",i*step);
}
fadeId[0] = element;
}
</script>

Titre: Re:lien htm qui s'allume et s'éteint doucement en rollover
Posté par: Shain le le 22-02-2003 a 12:16:39

Bah c toujours aussi long !
Le plus interressant serait peut etre de le mettre dans un fichier .s externe, non ?

Titre: Re:lien htm qui s'allume et s'éteint doucement en rollover
Posté par: DriverZ le le 22-02-2003 a 12:38:14

Ouai d'ailleurs ils l'utilisent en externe sur les deux sites:

http://divxstation.com/softwareId.asp?sId=163

http://www.phpbb.com/styles/styles_demo/index.php?s=29


Titre: Re:lien htm qui s'allume et s'éteint doucement en rollover
Posté par: SmAsH le le 02-03-2003 a 18:50:15

et comment vous faites pour l'installer dans un forum phpbb ?
Merci de vos reponses :D

Titre: Re:lien htm qui s'allume et s'éteint doucement en rollover
Posté par: PM le le 02-03-2003 a 19:43:51

Il y a bien des effets de styles possibles en CSS ... il suffit d'aller fouiller sur www.w3c.org ... par contre, je ne me souviens plus de la compatibilité avec tous les navigateurs


Forum-webmaster | Actionné par YaBB SE
© 2001-2003, YaBB SE Dev Team. Tous droits réservés.