Module Timeline historique

Descriptif module

Dépendances :

CSS/SCSS :

La feuille de style timeline.css est générée par pré-processeur SCSS de façon à faciliter :

Les noms des variables déclarées dans le fichier *.scss sont explicites et il y a des commentaires lorsque nécessaire.

Structure HTML :

Le module est inclus dans une balise <section id="timeline-section" class="animated waiting">
L'id permet d'isoler les styles propres au module des autres éléments du site (navigation, footer, haut de page, etc.).
Les classes "animated" et "waiting" servent à l'animation de chargement du module. En effet, le module ne s'affiche que lorsque tous les visuels le constituant sont chargés sur le poste client afin d'assurer son bon fonctionnement.

Le module est composé de 4 éléments :
<div class="curtain"> : rideau qui masque le module pendant le chargement des visuels.
<div id="loaderPage"> : animation de chargement.
<header> : le titre et la navigation dans les dates.
<div id="timeline" class="timeline"> : les éléments.

Détail structure timeline :

Chaque date est contenue dans une balise <article>.
Les articles sont encadrés par un conteneur <div class="drag"> qui permet d'effectuer le drag'n'drop du module (avec le plugin jQuery iscroll.js).

Pour chaque article, l'image de fond est contenue dans le bloc <div class="date-visuel">
Ce bloc, en position: absolute, a une hauteur et une largeur fixée à 100%. L'image est déclarée en background dans le code HTML en style inline pour simplifier les mises à jour (et, à terme, permettre leur dynamisation) :
style="background:url('img/XXX.jpg') no-repeat center center; background-size:cover;"

Le contenu (texte + image) est placé dans une balise <div class="date-content">.
Une balise <div class="line"> encadre l'ensemble afin d'assurer l'affichage Flex et les largeurs en pourcentage des blocs texte et image. C'est à cet élément qu'on applique les effets de transition opacity et translateY.
Le contenu textuel est placé dans une balise <div class="text">
La date est contenue dans une balise <head>.
Le sous-titre est contenu dans une balise <h3>
Le texte descriptif est contenu dans une balise <p> et/ou <ul><li> lorsque nécessaire.
La vignette est placée dans une balise <div class="visuel">, j'y ai appliqué un border-radius de 6px pour assurer la cohérence avec les autres pages du site.

Autres informations

Dans le fichier *.scss, j'ai inclus les styles nécessaire à cette petite présentation. Ils m'ont aussi permis de m'assurer qu'on pouvait placer des contenus au-dessus et en-dessous du module. À supprimer avant livraison finale.

J'ai récupéré l'ensemble des styles présents sur le site de façon à m'assurer qu'il n'y avait pas d'écrasements fortuits ou d'effets de bord indésirables. L'appel à cette feuille de style css/helpline-default.css sera à supprimer de la page HTML et le fichier pourra être supprimé du répertoire css.

J'ai également récupéré les polices embarquées. L'appel à la feuille de style css/MyFontsWebfontsKit.css sera à supprimer de la page HTML et le fichier pourra être supprimé du répertoire css. De même, les fichiers *eot et *.svg présents dans le répertoire css/webfonts pourront être supprimés puisque l'embarquement des polices sera pris en charge par la méthode actuellement en place sur le site.

Les visuels de fond sont des JPEG qualité 45%, 1920px de large (hauteur variable selon les sources fournies).
Les vignettes sont des JPEG 70% ou des PNG 24bits, 450px de large (hauteur variable selon les sources fournies).