Vous pouvez me contacter via Facebook pour questions & suggestions : Page Facebook relative à mon site
Attention il s'agit d'un chapitre un peu difficile ; l'emploi de la propriété POSITION est subtil et se fait conjointement avec d'autres propriétés : top, left, z-index, etc.
Dans la page précédente je vous ai montré que pour mettre de front plusieurs éléments de type "blocs" on utilisait float : left / right ou display : inline-block. Alors à quoi sert la propriété position ?
Il faut utiliser conjointement avec position : fixed /absolute / relative les propriétés top (ou bottom)
et left (ou right).
Pour ces quatre propriétés la valeur peut être exprimée en pixels ou en % !
Attribuer position : fixed et z-index à la boite de navigationn permet à celle-ci d'être affichée en permanence
même lorque le visiteur fait défiler vers le bas.
Je vous indique ci-dessous le code pour obtenir cette mise en page.
La boite NAV contient le titre du site et la zone de navigation.
Le contenu de chaque page est dans la boite SECTION ; ce contenu peut être très volumineux.
La position de la boite NAV est fixe par rapport à l'angle haut gauche de l'écran !
Grâce à un positionnement fixe de la boite NAV combiné à un z-index : 999
ce bloc reste toujours affiché même lorsque vous faites défiler la page vers le bas.
En effet lorsque vous faites remonter le bloc SECTION, ce dernier glisse sous la boite NAV.
car son z-index est inférieur à celui attribué à la zone NAV.
Pour pouvoire donner un "top" de départ à SECTION il faut positionner cette boite en "relatif" ; voir paragraphe suivant.
Le rendu du code dans un cadre :
Utilisez la barre de défilement vertical pour bien vérifier que la zone de navigation est affichée en permanence : lorsque vous défilez vers le bas alors le contenu de SECTION glisse sous la boite NAV.
L'objet est décalé en fonction des valeurs de top et de left par rapport à la position qu'il aurait du avoir normalement.
Donc si vous utilisez position : relative sans préciser top et left l'élément est positionné normalement !
Nous venons de voir dans le premier exemple de cette page que la zone de navigation était positonnée en fixe et la zone de contenu en relatif.
Tant que les propriétés text-shadow et box-shadow n'existaient pas, on utilisait beaucoup le positionnement relatif pour créer un effet d'ombre sur un élément.
On veut afficher une image qui fait 400 par 300 avec un effet d'ombre sans utiliser la propriété box-shadow. C'est ce qu'on appelle être "sado maso" (lol).