Nous avons pu voir et revoir énormément de choses sur ce sujet de diaporama, une vraie mine d'or.
Mais à présent, les étapes qu'il reste avant de terminer ce TP vont prendre une tournure différente.
La meilleure méthode pour apprendre et retenir, c'est pratiquer et
repratiquer. Je vous propose donc de
repratiquer.
On doit tout refaire depuis le début, c'est ça ?
Non, ne vous inquiétez pas, je ne vous demanderai jamais quelque chose d'aussi cruel…
Ce que j'attends de vous, c'est juste que vous utilisiez tout ce que nous avons appris dans un seul et même bon gros diaporama.
Par « bon gros diaporama », j'entends plusieurs diaporamas présentant des photos différentes dans une seule et même structure.
Hep, hep, hep ! Toi, là-bas, qui essaies de t'échapper par-dessous la table, reviens ici tout suite !
Consignes
Il y en a parmi vous qui ont peur, je le sens. Mais vous n'avez aucune raison de vous en faire.
Nous ne sortirons pas du cadre de ce que nous avons vu dans les chapitres précédents et avec un peu de méthode et beaucoup de tests, ça devrait aller comme sur des roulettes.
Il y en a beaucoup qui vont réussir tout ça sans aide, mais si vous n'en faites pas partie je serai là de toute façon.
Reprenons ce que nous avons vu :
- faire tenir des miniatures en lévitation autour d'un espace libre rectangulaire ;
- faire apparaître des agrandissements au milieu d'un diaporama centré en hauteur et en largeur ;
- faire apparaître des commentaires en même temps que les agrandissements ;
- utiliser l'espace central pour le titre du diaporama et les liens vers les autres diaporamas (dans un conteneur avec couleur de fond transparente) ;
- utiliser une image de fond pour le centre à l'échelle de celui-ci, et sous le texte ;
- insérer un lien pour ajouter ou enlever une bordure ;
- ajouter un ou plusieurs liens pour agrandir ou réduire la résolution ;
- embellir le tout avec une couleur de fond, de la transparence et des arrondissements d'angles.
Au risque de me répéter, je vous demande d'appliquer tout ça dans un gros diaporama.
Précisions :
Nous créerons au moins deux diaporamas qui seront présentés dans au moins deux résolutions, chacune avec ou sans bordures.
Ce qui nous fait : 2 × 2 × 2 = Aïe !
Oui, c'est bien ça, nous aurons un minimum de huit fichiers HTML, et bien sûr un fichier CSS ainsi que plein de photos.
Dans mon cas, ce sera quatre diaporamas, deux résolutions, avec ou sans bordures, soit 16 fichiers HTML + 1 CSS et 144 photos !
Pfiouuu !
Pourquoi tu nous embêtes comme ça, deux ou quatre fichiers HTML ne suffiraient pas ?
Non ! Et il y a au moins trois bonnes raisons à cela :
- asseoir ses bases est important, et appliquer ces bases en même temps dans un même projet est un bon moyen de pratiquer ;
- la suite du TP sur le PHP pourrait paraître moins justifiée et plus compliquée si vous ne vous êtes pas arraché les cheveux avec plusieurs fichiers au préalable ;
- il faut bien au moins un peu se prendre la tête, et aussi, plus on se tape la tête contre les murs maintenant, plus le plaisir sera grand dans la partie II.
Priorités
Une bonne question à se poser serait :
Quel ordre devrais-je suivre dans ma liste de choses à faire pour me compliquer le moins possible ?
En totale contradiction avec ce que l'on fait souvent : commencer par le plus agréable, ce qui se voit, mais surtout ce qui pollue la lecture d'un fichier en chantier.
Vous m'aurez compris, je vous conseille ici de laisser les fioritures de côté jusqu'à ce que tout fonctionne, ensuite seulement il sera temps de peaufiner.
Il faudra donc dans un premier temps faire sans
opacity,
border-radius et consorts.
J'aurais bien inclus background-color dans la liste des propriété qui peuvent attendre, mais sachez tout de même qu'elle est souvent utile pour repérer et comprendre des problèmes de rendu.
Pensez à utiliser cette astuce en cas de besoin.
Pareil pour le texte, il sera temps une fois que tout fonctionne d'ajouter plein de commentaires et de passer du temps à confectionner un joli menu.
Hypothèses d'organisation
Nous savons que nous aurons autant de fichiers HTML que de diaporamas, fois le nombre de résolutions, fois deux (avec ou sans bordures). Mais comment allons-nous traiter le CSS ? Plusieurs options s'offrent à nous :
- La barbare
Méthode qui consisterait à intégrer l'intégralité du CSS au sein de chaque fichier HTML.
- Avantages :
- pas de fichier CSS à créer ni à gérer ;
- tout notre CSS est modifiable depuis le fichier HTML.
- Inconvénients :
- impossibilité de modifier le CSS de sorte qu'il s'applique à tous les fichiers ;
- utilisation inutile de bande passante puisqu'il y aurait beaucoup de redondance (le poids total de nos fichiers serait inutilement plus lourd qu'il ne devrait).
- La futée
Méthode qui consisterait à créer quatre fichiers CSS différents (petit avec bordures, petit sans bordures, grand avec bordures, grand sans bordures) et d'appeler le fichiers CSS en fonction des besoins.
- Avantages :
- il est inutile de mettre du CSS dans nos fichiers HTML ;
- on limite au maximum les redondances.
- Inconvénients :
- le principal problème de cette solution est qu'il ne serait pas possible de modifier le CSS afin qu'il s'applique à toutes les feuilles en même temps, chaque modification concernant tous les fichiers HTML (couleur de fond, taille du texte, etc.) impliquerait la modification des quatre fichiers CSS.
- La compliquée
Méthode qui consisterait à inscrire tout le CSS dans un fichier à part.
- Avantages :
- il est inutile de mettre du CSS dans nos fichiers HTML ;
- on évite les redondances.
- Inconvénients :
- cela impliquerait d'attribuer des id différents au div #diaporama des quatre différents types fichier HTML (petit sans bordures, petit avec bordures, grand sans bordure, grand avec bordures) afin de pouvoir les modifier depuis le fichier CSS, unique source de CSS ;
- il faudrait souvent multiplier le nombre de sélecteurs CSS par quatre pour ajuster certaines valeurs (largeurs, hauteurs, positions…) spécifiques à chaque cas, ce qui serait lourd et rendrait un fichier assez conséquent.
- La raisonnable
Méthode qui consisterait à écrire le CSS commun à tous les fichiers dans une feuille CSS à part et inclure le reste (ce qui change) dans chaque fichier HTML.
- Avantages :
- on évite les redondances ;
- on peut garder le même id #diaporama dans tous les fichiers HTML, ce qui simplifie grandement notre CSS ;
- on peut modifier ce qui est de commun une fois pour toutes dans un seul endroit ;
- bref, il n'y a que des avantages…
- Inconvénients :
- … et pas ou peu d'inconvénients.
Notre choix
Si vous avez lu ce qui précède, je pense que vous avez compris quelle méthode nous allons utiliser…
Nous choisirons
la méthode raisonnable, mais sachez que
la méthode compliquée serait aussi très bien adaptée à notre cas.
Mais… que va-t-il se passer si on appelle un fichier CSS et qu'on ajoute du CSS dans le fichier HTML, ça ne va pas faire trop de CSS ? Parce que je ne voudrais pas que ça ne fonctionne pas !
En effet, ça peut être déroutant comme façon de procéder, mais il n'y a aucun problème.
Voici ce qui se passe.
- Dans le fichier HTML, on dit au navigateur qu'il doit lire une feuille CSS distante, ce qu'il fait. Il appliquera le style en fonction de sa lecture (et de son interprétation, mais ça, c'est une autre histoire).
- Ensuite, il voit qu'il y a aussi du code CSS directement dans le fichier HTML. Il le lit donc et l'ajoute au CSS précédent.
- Si le CSS présent dans le HTML entre en conflit avec celui qui a été défini dans la feuille CSS (ce qui ne devrait pas être le cas dans notre exemple), le CSS prendra en compte la dernière modification (le CSS présent dans le HTML) et l'appliquera de son mieux au contenu HTML.
C'est plutôt simple et logique, vous ne trouvez pas ?
Procédure
Première étape
Il faudra commencer par préparer un squelette de diaporama nu de formatage (avec apparition de commentaires) qu'on utilisera pour créer les quatre configurations suivantes :
- un diaporama faible résolution sans bordures ;
- un diaporama faible résolution avec bordures ;
- un diaporama haute résolution sans bordures ;
- un diaporama haute résolution avec bordures.
En s'aidant bien sûr des chapitres précédents au besoin.
Puis, une fois que tous fonctionneront, il faudra enlever le CSS que les quatre fichiers HTML ont en commun pour le mettre dans un fichier CSS à part.
Deuxième étape
À ce moment-là, nous aurons déjà terminé un de nos diaporamas (une série de photos) et il nous suffira de dupliquer ces quatre fichiers et de les modifier autant de fois que nous avons de diaporamas différents pour obtenir notre mégadiaporama.
Bien sûr, il faudra changer les chemins vers les images, les liens, les titres, etc., mais cette méthode est néanmoins très rapide.
En fait, une fois que vous avez créé un diaporama, en ajouter un autre ou bien trois autres ne fait pas une énorme différence en terme de travail à fournir.
Le plus long sera de sélectionner les plus belles photos.
Dernière étape
Une fois que les fichiers s'appelleront, que les diaporamas grossiront et rapetisseront d'un clic et que les bordures apparaîtront puis disparaîtront de même, il ne nous restera plus qu'à modifier le style commun à appliquer à tous les fichiers dans le fichier CSS.
Et vous aurez de quoi faire !
- Formater le texte (couleur, épaisseur, taille…).
- Choisir des images et des couleurs de fond.
- Écrire des commentaires pertinents.
- Utiliser la transparence.
- Arrondir les angles.
- Et même toute autre idée farfelue qui pourrait traverser votre esprit.