La parallaxe défilement avec CSS?
Je travaille sur un projet et j'ai terminé avec le contenu. Pour la conception cependant, je pense à l'aide de la parallaxe défilement technique.
Cependant, tout ce que j'ai pu trouver à ce sujet a été avec JavaScript ou Jquery, alors que je ne maîtrise avec CSS3.
Peut parallaxe défilement être mis en œuvre avec CSS3(avec HTML5 si nécessaire), au lieu d'utiliser des plugins jquery? Ce serait bien si je pouvais être mis en évidence quelques tutoriels pour la même chose.
Remarque: il est proche de l'effet, je veux produire(http://jessandruss.us/)
- Je ne pense pas que c'est possible en utilisant uniquement CSS. Vous aurez à détecter défilement (et à l'heure actuelle considérée élément) afin de parvenir à cet effet (CSS autant que je sache, ne prend pas en charge la détection de position à partir d'un défilement de la page). Aussi quelques images faites défiler jusqu'à certain point, et puis ils "stop" lorsque certains de défilement se produit. Cela ne vous donne une option pour certains type de script la détection de ces cas, et CSS ne donner que pour vous. Javascript est prévu pour le traitement, le CSS est uniquement pour l'affichage des éléments et certaines interactions fondamentales (comme plane). Aussi, que le lien que vous avez fourni effectivement utilisé jQuery pour la réalisation de cet
Vous devez vous connecter pour publier un commentaire.
J'aime vraiment KitKat réponse, mais comme Roy Prins suggéré, il serait très utile de le réduire à l'essentiel, pour voir précisément ce qui est suffisant pour créer cet effet. J'ai fait jusqu'ici.
Pour produire un très de base de la parallaxe défilement effet, l'exemple suivant est suffisant. Notez que le navigateur préfixes, réserves, etc. n'ont pas été abordés. CSS les valeurs marquées avec
/* e.g. */
peut être changé dans le concepteur de la discrétion.Voir mon fourche stylet ici.
Une petite correction KitKat réponse:
Il semble que l'on n'a pas besoin de
transform-style:preserve-3d
(au moins dans google Chrome), et que l'effet plutôt dépend du corpsoverflow:auto
. Supprimer ce et la parallaxe échoue.La recherche de la parallaxe pur css et en cliquant sur le premier résultat de CodePen (le deuxième résultat est la page en cours :), en est un bon exemple afficher avec fixe et défilement origines. Pour le record, je place le code source ici, de fournir un soutien pour Chrome, Safari et Opera, trop.
L'exemple semble avoir deux types de milieux:
background-attachment: fixed
dans l'élément souhaité, comme#slide2
transform: translateZ(-1px) scale(2)
avant l'élément souhaité, comme#slide1
En outre, l'effet de défilement semble dépendre du réglage
transform-style: preserve-3d
debody
pour fonctionner correctement. (IE n'arrive pas à supporttransform-style
, par la manière.)Enfin, différente de la vitesse de défilement peut être réalisé en modifiant
transform
de la propriété, comme les deuximg
éléments de l'exemple.code Source:
<html>
-conteneur ne défile pas ici, mais le corps. Aussi tous les éléments jusqu'à la diapositive réelle ontheight: 100%
ensemble.Vous devriez être en mesure d'obtenir au moins un effet partiel en utilisant les transitions CSS. Cependant, comme Alejandro mentionné, le CSS ne détecte pas de défilement.
Prendre un coup d'oeil à "Cool Effet de Défilement Parallaxe - dans le plus Pur CSS3!" (http://css.dzone.com/articles/cool-parallax-scrolling-effect) pour un exemple.
La clé est d'utiliser les liens des pages internes. Ainsi, au lieu de défilement, l'utilisateur peut cliquer sur un lien de la page et de la page, puis faites défiler vers le haut/vers le bas à la nouvelle section. Comme la page défile, les transitions de fournir à l'effet de parallaxe.
Ici est un codepen
Oui, Si vous voulez une base simple effet de parallaxe puis CSS3 @keyframes règle serait suffisant(pas de parallaxe) mais encore une fois comme les autres mentionné, si vous souhaitez utiliser la parallaxe au maximum puis à l'aide de javascript est un must. J'ai de toute façon de vous donner les liens pour les deux manières. N'hésitez pas à consulter les deux et utilisez ce que vous voulez
Pur CSS3 :
http://jasonlau.biz/home/css/parallax-effect-using-only-css-with-no-javascript /* avec des images clés */
http://css.dzone.com/articles/cool-parallax-scrolling-effect /* sans images clés */
Avec JQuery:
http://potentpages.com/parallax-tutorials/
http://www.webdesignerdepot.com/2013/07/how-to-create-a-simple-parallax-effect/
http://code.tutsplus.com/tutorials/a-simple-parallax-scrolling-technique--net-27641
http://www.1stwebdesigner.com/css/create-scrolling-parallax-website/
Espère que cela a aidé
L'ADN de la Parallaxe /CSS images clés de la Parallaxe de l'Animateur
Cette parallaxe utilise la norme CSS animation (à l'aide de @keyframes à la règle) pour définir des effets de défilement. Vous n'avez pas besoin de javascript connaissances.
Le seul besoin est d'inclure 2 configuration-moins les fichiers javascript (jquery + ADN de la Parallaxe CSS du plugin) qui va automatiquement exécuter @images clés d'animation sur l'élément que vous faites défiler...