CSS Background "aléatoire"
Bonjour a tous & à toutes,
après avoir passé plus de la moitié de la journée a remuer le net pour trouver comment avoir une image en aléatoire, je me retourne vers vous pour votre aide:
Donc voilà j'ai une <div> avec un background désigné dans ma CSS, et je voudrais que cette image soit aléatoires.
Quelqu'un aurait une idée ?
après avoir passé plus de la moitié de la journée a remuer le net pour trouver comment avoir une image en aléatoire, je me retourne vers vous pour votre aide:
Donc voilà j'ai une <div> avec un background désigné dans ma CSS, et je voudrais que cette image soit aléatoires.
#contenu {
background-image:url(/wp-content/themes/madouce/media/contenu.png);
background-repeat: no-repeat;
background-attachment:center;
position: absolute;
width:1147px;
height:734px;
left: 50%;
top:-1px;
margin-left: -574px;
}
Quelqu'un aurait une idée ?
Configuration: Mac OS X Safari 528.16
23 réponses
-
Pour mettre un background image aléatoire je te conseil plutot d'utiliser javascript que php car c'est éxécuté du cotés client et c'est toujours ça à faire en moins pour ton serveur.
-
voici le code
<?php
$tab = array('ecran1.css','ecran2.css','ecran3.css');
$a = mt_rand(0,2);
echo "<link rel= 'stylesheet' href = $tab[$a] type ='text/css'/>";
?> -
Merci aussi
-
Bonjour.
Je sais que ce sujet date un peu, mais comme il m'a été utile, je tenais à remercier Smoking Bird pour son code PHP. Merci !
Salutations,
Alecx. -
ptdr :D j't'en prie^^
j'ai pas oublié pour la créa visuelle ;) j'te tiendrais au courant si besoin est^^
Et si t'as d'autres soucis, fais moi venir sur tes posts^^ -
Tu gère du Biftek mec !
Merci beaucoup ;)
Sinon, comme d'hab' si tu as besoin de quoi que ce soit pour de la créea visuelle, n'hésite pas ;) -
ptdr j'te zut mon pote :D
#contenu {
background-image:url('
<?php
par
#contenu {
background-image:url('<?php
la sélection d'images se fait mais le saut à la ligne bloquait le délire^^ -
Ne te cherche pas des excuses ;)
Sinon ... le problème persiste =( -
c'est une technique nouvelle par rapport à celle que j'utilise d'habitude, c'est pour ça que le résultat est pas immédiat ;) j'expérimente :p
remplace:
$img=array_rand($bckImg);
echo $bckImg[$img[0]];
?>');
par:
echo $bckImg[array_rand($bckImg)];
?>'); -
GRRRR, toujours pareil !
<style type='text/css'> #contenu { background-image:url(' <?php $bckImg=array('http://www.ma-douce.fr/wp-content/themes/madouce/background/image_1.png','http://www.ma-douce.fr/wp-content/themes/madouce/background/image_2.png','http://www.ma-douce.fr/wp-content/themes/madouce/background/image_3.png','http://www.ma-douce.fr/wp-content/themes/madouce/background/image_4.png','http://www.ma-douce.fr/wp-content/themes/madouce/background/image_5.png','image6.jpg'); $img=array_rand($bckImg); echo $bckImg[$img[0]]; ?>'); position: absolute; width:1147px; height:734px; left: 50%; top:-1px; margin-left: -574px; } </style> -
Ca fait .... PAREIL ! =D
-
j'mé planté^^
si ça fonctionne pas, fais:
$img=array_rand($bckImg);
echo $bckImg[$img[0]];
?> -
okay je vois, remplace:
echo array_rand($bckImg);
?>
par
$img=array_rand($bckImg);
echo $img[0];
?>
et dis moi ce que ça fait^^ -
-
tu t'es planté là dessus : (en gras)
<style type='text/css'> #contenu { background-image:url(' <?php $bckImg=array('http://www.ma-douce.fr/wp-content/themes/madouce/background/image_1.png','http://www.ma-douce.fr/wp-content/themes/madouce/background/image_2.png','http://www.ma-douce.fr/wp-content/themes/madouce/background/image_3.png','http://www.ma-douce.fr/wp-content/themes/madouce/background/image_4.png','http://www.ma-douce.fr/wp-content/themes/madouce/background/image_5.png','image6.jpg'); echo array_rand($bckImg); ?> position: absolute; width:1147px; height:734px; left: 50%; top:-1px; margin-left: -574px; '); } </style>
remplace par:
<style type='text/css'> #contenu { background-image:url(' <?php $bckImg=array('http://www.ma-douce.fr/wp-content/themes/madouce/background/image_1.png','http://www.ma-douce.fr/wp-content/themes/madouce/background/image_2.png','http://www.ma-douce.fr/wp-content/themes/madouce/background/image_3.png','http://www.ma-douce.fr/wp-content/themes/madouce/background/image_4.png','http://www.ma-douce.fr/wp-content/themes/madouce/background/image_5.png','image6.jpg'); echo array_rand($bckImg); ?>'); position: absolute; width:1147px; height:734px; left: 50%; top:-1px; margin-left: -574px; } </style> -
Tes explications sont très claires ;)
Seulement ... ça ne veux pas ... j'ai ajouter ceci.<style type='text/css'> #contenu { background-image:url(' <?php $bckImg=array('http://www.ma-douce.fr/wp-content/themes/madouce/background/image_1.png','http://www.ma-douce.fr/wp-content/themes/madouce/background/image_2.png','http://www.ma-douce.fr/wp-content/themes/madouce/background/image_3.png','http://www.ma-douce.fr/wp-content/themes/madouce/background/image_4.png','http://www.ma-douce.fr/wp-content/themes/madouce/background/image_5.png','image6.jpg'); echo array_rand($bckImg); ?> '); position: absolute; width:1147px; height:734px; left: 50%; top:-1px; margin-left: -574px; } </style> -
ptdr j'suis vénère, deezer vient de me planter opera -_-
bref, ce sera une version un peu plus expéditive du coup :s
Tous les docs concernés par ce code, ceux qui ont besoin d'une sélection aléatoire de background donc, doivent avoir l'extension .php (au lieu de html par exemple, je sais pas sur quoi tu travailles^^)
Un code php est interprété s'il se retrouve entre <?php et ?>, sinon il ne le sera pas. On peut mettre autre chose que du php dans ces balises d'ouverture et de fermeture, mais ça doit se plier aux règles du langage php
Exemple valide:
<?php
echo "<img src='tonimage.png'/>";
?>
exemple invalide:
<?php
<img src='tonimage.png'/>
?>
Dans les deux exemples on a du html, mais seul le premier est valide car c'est du html interprété par le php et renvoyé comme il faut^^
Donc, que fait le code que je t'ai écris?
Il sélectionne un champ aléatoire dans un tableau, un tableau qui contient le nom des images que tu utiliseras en background.
Ce code doit être placé dans la balise head, entre les balises <style type='text/css'> et </style>, histoire d'indiquer qu'on met du css (même s'il y a du php dedans, ce n'est pas contradictoire, mais c'est une autre histoire : o))
Concrètement:
on créé un tableau d'images ( array('image.jpg',...) ) qu'on place dans la variable $bckImg, qui nous permettra de se référer à ce tableau et de bosser dessus, et une fois qu'on a accès facilement à notre tableau, on récupère la valeur aléatoire avec la fonction array_rand($bckImg) (elle contient en argument le tableau qu'on a créé) et on l'affiche en faisant précéder cette fonction de echo
Besoin de plus amples explications? : o) -
Je pense comprendre; mais proposé si gentiment, je veux bien les fondamentaux rapidos :D
-
okay, voyons simple, tu t'y connais un peu en php?
si oui, on passe direct à la suite, sinon, j'te refais les fondamentaux rapides^^
<DTD> <html> <head> <style type='text/css'> #contenu { background-image:url(' <?php $bckImg=array('image1.jpg','image2.jpg','image3.jpg','image4.jpg','image5.jpg','image6.jpg'); echo array_rand($bckImg); ?> '); } </style> </head> <body> </body> </html>
tente ça, ça devrait fonctionner^^, si non on peaufine (je l'ai pas testé^^) -
Pour le moment 3, mais j'en aurais tout au plus 5/6.
- 1
- 2
Suivant