Accueil

Traduction

Débuter en programmation web - sommaire

Débuter en programmation web - recherche

L'auteur : Patrick Darcheville

Vous pouvez me contacter via Facebook pour questions & suggestions : Page Facebook relative à mon site

Des pages interactives (CSS ou JS)

L'emploi du CSS permet de réaliser une certaine interactivité de la page. Je veux dire par là que le visiteur peut, sur survol / clic d'un élément modifier l'apparence de celui-ci.

Cependant les effets via le CSS sont limités. Ainsi et c'est logique on peut modifier via CSS une propriété mais pas un attribut.
Pour plus d'interactivité il faut recourir au langage de programmation du web : JavaScript.

Interactivité avec CSS

Exemple 1: l'image devient opaque et s'agrandit sur clic

Cliquez sur l'image et observez ...
interactivité de la page grâce à CSS

Le code CSS & HTML correspondant

Commentaire du CSS

Une image affectée de la classe "effet1" est quasi transparente et minuscule.
Une image affectée de la classe "effet1" mais survolée devient opaque et sa taille double !

Exemple 2 : l'image change

Avec les pseudo-classes CSS :active, :hover on peut changer les valeurs des propriétés de style voire rajouter des propriétés CSS mais on ne peut pas changer les valeurs des attributs. Par exemple on ne peut pas changer la source d'une image (valeur de l'attribut src de la balise IMG).
Donc l'astuce est de créer une boite et de changer la valeur de sa propriété CSS "background-image".

Survolez l'image et observez ...

Déshabillez moi !!!

Le code CSS & HTML correspondant

La boite identifiée "boite1" a pour "background" une image.
Si survol de cette boite (sélecteur : #boite1:hover) la valeur de la propriété background-image est changée ; un ombrage est ajouté.
Nous avons donc utilisé la pseudo classe :hover qui permet aussi de gérer un événement concernant un élément : le survol (par doigt ou la souris).

Lors du survol de l'image il faudrait que le texte de la balise H3 change : "Je suis déshabillée !"
Mais c'est impossible à faire en CSS : un événement concernant la boite identifiée boite1 ne peut modifier la balise H3.
Par contre cette animation serait facile à réaliser avec JavaScript.

Certaines propriétés CSS introduites par la version 3 permette de réaliser de véritables animations.
Je vous renvoie au tutoriel CSS - version 3 : lien vers ce tuto

Interactivité avec JavaScript

On a vu qu'il est possible via les pseudo-classes de changer les propriétés CSS initiales des éléments. Mais il est impossible de modifier les attributs de ces éléments.
Par contre c'est possible via JavaScript.

Exemple

Dans une page une partie de l'article rédactionnel est masqué par défaut, seul le premier paragraphe ("l'accroche") apparait. Mais en cliquant sur un lien la partie masquée doit s'afficher.
Je vous présente successivement le code HTML, CSS et JavaScript.

Le code HTML

La boite DIV est identifiée "complet".

Si clic sur la balise A : appel d'une fonction JS.

Le code CSS

Il se résume à une règle de style :
div#complet{display : none; }

Par défaut la boite identifiée "complet" est donc masquée.

Le script

Cette fonction démasque l'élément identifié "complet".

Le rendu

Pour en savoir davantage

Si vous voulez créer des pages véritablement dynamiques (qui peuvent changer d'aspect visule mais aussi de contenu) il faut programmer en PHP pour relier la page à une base de données MySQL.
Initiation au PHP & MYSQL