2010-07-14 18 views
0

J'ai un très gros problème avec une implémentation de serialscroll. Je l'ai défini de manière à ce que chaque élément de liste ait une largeur de 100%, pour que le diaporama se déroule en plein écran.jQuery Serialscroll Problème CSS

Vous pouvez consulter le code complet ici: http://www.reverenddan.net/so/

Le CSS est assez simple:

#slideshow { 
width: 100%; 
height:100%; 
margin: 0; 
padding: 0; 
position:absolute; 
overflow:hidden; 
} 

#slideshow ul { 
width: 800%; 
height:100%; 
margin: 0; 
padding:0; 
} 

#slideshow li { 
width:12.5%; 
height:100%; 
margin: 0; 
padding: 0; 
float:left; 
list-style: none; 
} 

et le code HTML correspondant:

<div id="slideshow"> 
       <ul> 
        <li id="slide1"><img class="centered" src="img/beetle.png" width="344" height="380" /></li> 
        <li id="slide2"><img class="centered" src="img/beetle.png" width="344" height="380" /></li> 
        <li id="slide3"><img class="centered" src="img/beetle.png" width="344" height="380" /></li> 
       </ul> 
      </div> 

Ce tout fonctionne un régal, mais Si vous redimensionnez la fenêtre sur la deuxième ou la troisième image, les éléments de la liste contenant les images semblent être redimensionnés à un rythme différent de celui de la fenêtre du navigateur ntered. J'ai utilisé un peu de jquery pour aligner verticalement les images, mais je pensais que le texte: align: center et 100% width serait suffisant pour les maintenir en place.

Toutes les pensées seraient grandement appréciées, je suis au bout de mes doigts!

Répondre

1

Essayez de changer #slideshow d'utiliser une largeur fixe, positionnement relatif, et une marge automatique gauche et à droite, ce qui devrait avoir pour effet de centrage (et son contenu):

#slideshow{ 
    position: relative; 
    height: 100%; 
    width: 900px; 
    margin: 0 auto; 
    padding: 0; 
    overflow:hidden; 
} 

Changer la largeur 900px Je suggère ci-dessus quelque chose de plus petit si vous n'allez pas utiliser des images aussi larges.

+0

Je pourrais vous embrasser! Merci beaucoup. En tant que sidenote: Passer de l'absolu au relatif signifiait que la hauteur de 100% ne fonctionnait plus, ce qui a tué mon alignement vertical. J'ai ajouté dans une ligne de jquery pour redimensionner le div #content à la hauteur de la fenêtre et tout fonctionne à merveille maintenant! Merci encore – Dan

+0

Glad it helps. Bon point sur la hauteur de 100% - heureux que vous étiez en mesure de compenser avec jQuery. – Nick

+0

Vous ne savez pas si vous le verrez mais j'ai une question de suivi rapide. Le seul reproche que j'ai avec la solution est que maintenant les images ne glissent pas en utilisant toute la largeur de la fenêtre (évidemment) - j'ai eu de superbes superpositions png sur le bord de l'écran que vous pouvez voir dans la démo. Je ne comprends tout simplement pas pourquoi faire des éléments de liste 100% de largeur (ou en utilisant js pour définir une largeur de pixel de la même taille que la fenêtre) visse si mal. N'y a-t-il aucun moyen d'y parvenir, ou est-ce que je demande d'avoir mon gâteau et de le manger? Bravo – Dan