One page (avec Jimdo)

Un modèle de page a été proposé vers 2011 qui a eu beaucoup de succès : une page en navigation verticale, avec des images en pleine largeur qui ponctuent la lecture. Elles suivent la page ou restent fixe, ou encore, créent un effet de parallaxe.  Ce type de navigation en "OnePage" convient si vous avez un contenu de type récit linéaire. Le visiteur est contraint à prendre connaissance des éléments du site dans un ordre donné.

Le OnePage est assez risqué. L'outil est très présent, et le contenu a du mal à prendre le dessus. Le scroll est inconfortable pour le visiteur, aussi certains webmasters ajoutent une navigation par ancre ou autres interactions. Mais cela ajoute encore au sentiment de contrainte.

Un bel outil délicat à utiliser.

Exemple 1 : Site jimdo

Les images défilent avec le contenu (EDIT :le site a changé de design, ça ne fonctionne plus)

Remarquez que les informations priment. Les effets interactifs restent très discrets. Le slider d'exemples ne démarre pas seul, il est suggéré par un curseur de navigation qui n'apparait qu'après un délai. La navigation change subtilement d'aspect, tout en restant présente, afin d'indiquer que le visiteur se trouve sur une partie plus basse de la page.

 

Base structurelle : faire une fond fixe sur une page Jimdo

Une image "de fond" reste fixe lorsque le contenu défile. 



Changement du fond de page selon la zone

C'est un point de départ utile à réaliser un site en One Page.

L'idée est de modifier la solution proposée par l'aide Jimdo, afin que l'image d'arrière-plan du site change lorsque le lecteur atteint une information précise, en faisant défiler la page. 

En fait, il ne s'agit pas du véritable arrière-plan, mais du background d'une div placée dans la page. Comme il restera fixe par rapport au navigateur, il donne l'impression d'être le background de la page.



-1) Pour commencer, un design à fond de texte blanc opaque est nécessaire. Miami se prête bien à l'exercice. Mais pour le présent site en Malaga, je dois apporter des modifications locales :

#page-2450488522 .jtpl-content {background-color: #FFF;}#page-2450488522 .jtpl-section-main {max-width: 100%;}#page-2450488522 #content_area{max-width: 1000px; margin: 0px auto;} #page-2450488522{background-image: none !important}

 

-2) J'héberge quelques images de fond sur une page cachée je récupère leur liens html (remplacez dans l'adresse, les chiffres après "dimension=" par "orig", vous aurez le lien vers l'image HD

https://image.jimcdn.com/app/cms/image/transf/dimension=origxorig:format=jpg/path/s765ad084d58682ff/image/i211b365e3af8f05f/version/1451143837/image.jpg

https://image.jimcdn.com/app/cms/image/transf/dimension=origxorig:format=jpg/path/s765ad084d58682ff/image/ie8c0fcf7045f23ce/version/1451143872/image.jpg

https://image.jimcdn.com/app/cms/image/transf/dimension=origxorig:format=jpg/path/s765ad084d58682ff/image/ib460d7f55fd886ef/version/1451143890/image.jpg

 

La leçon Jimdo permet d'afficher les fonds dans une div, comme ceci :


-3) Inconvénient : le fond en mode "cover" change de taille en fonction des dimensions de l'écran, ce qui n'offre aucun contrôle prévisible de l'aspect de la page. Cela peut ne pas poser de problème, si l'image le permet. Mais je préfère fabriquer une image plus stable quelques soient les proportions hauteur/largeur de l'écran.

 

Je vais rajouter aussi quelques détails de style.

-4) Je modifie le code ainsi :

"background-size: 100% auto;

background-position: 0px bottom;

background-repeat: repeat-y;

background-color: rgb(140, 3, 3);height:250px;

box-shadow: 0px 0px 11px rgba(47, 2, 2, 0.9) inset;

outline: 1px solid rgba(140, 3, 3, 0.5);

outline-offset: 10px;

Résultat ci-dessous :


Le fond se "balade" encore un peu en fonction de la largeur de fenêtre, mais c'est mieux ainsi.

Rajoutons un peu de piment avec un titre associé à cette div, de façon à ce que ça serve de tête de chapitre.

A ce stade, l'effet de parallaxe est succinct, puisque seulement deux plans sont modélisés.

Je rajoute le titre et un peu de style :

<div style="position: relative; top:-252px;">

     <h3 style="padding: 0px 0px 0px 50%;line-height: 1em;font-size: 49px;color:white;text-shadow: 2px 6px 4px rgba(62, 2, 2, 0.56);}">

     De faux arrières-plans avec du texte par dessus</h3>

    </div>


De faux arrières-plans avec du texte par dessus

Modification du défilement du fond (jQuery-Parallax)

Le fond se reproduit verticalement, Ce genre de mise en page avec des bandeaux fonctionne mieux avec des images verticales occupant une grande partie de la hauteur de page.

En rajoutant un troisième plan de profondeur - défilant à une autre vitesse - on peut augmenter l'illusion de parallaxe.

Un exemple particulièrement réussit : http://www.ok-studios.de/home/ Vous constaterez que le design a une importance capitale dans la réussite de l'effet de parallaxe. Les bandeaux sont hauts afin de ménager un grand espace de vision, ce qui met l'effet en valeur. Les scènes incluent beaucoup d'espace libre, des objets en apesanteur. L'effet d'optique est augmenté par l'ajout d'images floues figurant divers plan de focales. Une agence de création peut prendre le risque de donner autant d'importance à l'effet de parallaxe pour sa vitrine.

Le pari est risqué : le site ne fonctionne pas sur Chrome ! (fonctionne sur Firefox)

 

L'effet de parallaxe est obtenu à l'aide du script jQuery-Parallax  - Explication en français ici. (préférez les dernières Màj  du créateur)

Le script jQuery-Parallax a été créé en 2011 par Ian Lunn en s'inspirant du site de Nikebetterworld. Simple à mettre en œuvre, il n'est toutefois plus mis à jour et son créateur recommande de lui préférer des scripts plus récents, (Skrollr -  ScrollMagic,  Pure CSS Parallaxcar la compatibilité mobile n'est pas assurée.


10% de la vitesse de défilement

30% de la vitesse de défilement

60% de la vitesse de défilement


10% de la vitesse de défilement

50% de la vitesse de défilement

200% de la vitesse de défilement

Effet parallaxe en CSS

L'une des techniques basée exclusivement sur les CSS est décrite par Keith Clark. Celle-ci utilise la propriété expérimentale "perspective", qui ne fonctionne pas sur tous les navigateurs, mais qui promet toutefois d'être mieux supportée par les mobiles.

Des contenants sont à la fois éloignés visuellement, par rapport à un point de référence, (ce qui réduit les effets du scroll sur eux) et augmentés en taille afin de rattraper leur dimension d'origine.

Les différences de perspective et les imbrications ou juxtaposition des contenants produit l'effet.

 

Une application du parallaxe CSS selon Keith Clark - en Jimdo

http://fredvig.jimdo.com/atelier/parallaxe-css/