Page d'accueil » Codage » Comment créer un pied de page collant en CSS uniquement

    Comment créer un pied de page collant en CSS uniquement

    Normalement, nous avons besoin de JavaScript pour effectuer des effets de défilement liées à différentes actions des utilisateurs sur les pages Web. Le script fait le travail de suivi de la distance parcourue en haut ou en bas du défilement, et déclenche une action quand une hauteur seuil est atteinte.

    Ce n'est pas particulièrement une mauvaise chose d'utiliser JavaScript pour les effets de défilement. En fait, il y a des cas plus compliqués qui sont impossible à résoudre sans JavaScript. Cependant il y a Hacks CSS qui peut remplacer ces scripts parfois.

    Cet article va vous montrer how pour créer des effets de bas de page révélant des effets de page à l'aide de CSS. Nous allons utiliser deux cas d'utilisation pour illustrer ceci: un pour la page entière (voir la démo) et un pour des éléments de page individuels, tels que des articles.

    Page entière

    Nous devons créer un pied de page qui apparaît en dessous de la page pendant que l'utilisateur fait défiler l'écran. De plus, quand ils font défiler la page en arrière, le pied de page doit se cacher sous la page à nouveau.

    Pour atteindre cet objectif, nous devons d’abord créer un pied de page avec position fixe au bas de l'écran.

    1. Créer un pied de page fixe

    Let's ajouter du contenu et un pied de page à la première page. J'utilise les balises HTML

    et
    pour la sémantique. toutefois,
    fonctionne aussi bien.

    Dans ma démo, une image de chauve-souris est affichée à l'intérieur du pied de page pour un effet pas si effrayant, mais vous pouvez choisir n'importe quelle autre image de votre choix..

     

    Continuez à faire défiler jusqu'à voir le pied de page

    Lorem ipsum dolor sit amet…

    Passage en CSS, supprimer tout espace autour du tag par réglage des marges à 0, et le faire assez longtemps par ajouter une hauteur personnalisée pour induire le défilement (si le contenu du corps de votre page est suffisamment long pour provoquer le défilement, vous n'avez pas à lui attribuer une hauteur).

    Donner des dimensions (largeur et la taille) au pied de page, et fixer sa position au bas de l'écran avec le position: fixe; et en bas: 0; Propriétés.

     body font-family: Crimson Text; taille de police: 13 pts; marge: 0;  footer width: 100%; hauteur: 200px; position: fixe; en bas: 0; couleur de fond: # DD5632;  
    2. Masquer le pied de page

    Appliquer le z-index: -1 règle au pied de page afin de placez-le derrière tous les autres éléments sur la page.

    Couleur les deux et balises blanches afin de couvrir le pied de page.

     body, html background-color: #fff;  footer width: 100%; hauteur: 200px; position: fixe; en bas: 0; couleur de fond: # DD5632; z-index: -1;  
    3. Ajustez la marge inférieure

    Met le marge inférieure du étiquette égale à la hauteur du pied de page (dans mon exemple 200px).

    De cette façon, il y aura assez d’espace en bas pour que le pied de page puisse Être visible quand l'utilisateur fait défiler la page.

     corps hauteur: 1000px; marge: 0; marge inférieure: 200 pixels; 

    C'est tout. L'effet de révélation du pied de page pour une page Web complète est terminé. Découvrez la démo Codepen ci-dessous.

    Éléments de page individuels

    Cette technique peut être utilisée pour un élément HTML individuel (avec un pied de page) qui assez long pour un effet de défilement de page approprié. La méthode est un peu compliquée, car elle ne fonctionne pas actuellement dans Chrome et IE, mais elle a un repli décent..

    1. Créer un long article

    Commençons par créer un long article avec un pied de page. Pour promouvoir le code sémantique, j'ai choisi

    et
    .

     

    Article 1

    Lorem ipsum dolor sit amet…

    Ci-dessous, vous pouvez voir le style de base de l'article et du pied de page.

     article width: 500px; couleur de fond: # FEF9F3; rembourrage: 20px 40px;  article> footer height: 100px; couleur de fond: # FE0178;  corps font-family: cormoran garamond;  

    Mon article ressemble actuellement à ceci. Bien sûr, vous pouvez également utiliser d'autres règles de style de base.

    Article avec pied de page - Style de base
    2. Rendre le pied de page collant

    Le pied de page précédent a été corrigé, celui-ci va être collant. Appliquer le position: collant règle au pied de page, de sorte qu'il se déplacera à l'intérieur des limites de l'article, mais toujours maintenir sa position sur l'écran pendant que l'utilisateur fait défiler de haut en bas.

     article> footer height: 100px; couleur de fond: # FE0178; position: -webkit-sticky; position: collante; en bas: 80px;  

    le en bas: 80px règle fixe la position du pied de page 80px au-dessus du bas de l'article.

    Vous pouvez ajuster sa valeur à votre goût, car elle détermine le point où le pied de page commence à apparaître ou à disparaître lorsque l'utilisateur fait défiler l'écran vers le haut ou vers le bas..

    Donner la même valeur pour la marge inférieure de l'article, afin qu'il y ait assez d'espace en bas pour révéler le pied de page complet.

     article width: 500px; couleur de fond: # FEF9F3; rembourrage: 20px 40px; marge inférieure: 80px; 
    3. Ajouter un fond partiellement transparent

    Maintenant nous avons besoin une ouverture au bas de l'article à travers lequel on peut voir le pied de page collant défiler de haut en bas.

    Pour ce faire, remplacez le Couleur de fond de l'article avec un gradient linéaire image de fond, qui du haut de l’article jusqu’au sommet du pied de page est coloré avec la couleur de fond de l'article, et la partie restante vers le bas est rendu transparent.

     article width: 500px; rembourrage: 20px 40px; image d'arrière-plan: dégradé linéaire (jusqu'au bas, # FEF9F3 calc (100% - 120px), transparent 0); marge inférieure: 80px;  

    lecalc (100% -120px) Fonction CSS calcule la hauteur totale de l'article moins le pied de page. Dans mon exemple, c’est 120px (100px pour la hauteur). + 20px pour le rembourrage).

    Article avec image de fond à gradient linéaire et pied de page collant
    4. Placez le pied de page à l'arrière

    Enfin, placez le pied de page derrière l'article en utilisant le z-index: -1 Règle CSS.

     article> footer height: 100px; couleur de fond: # FE0178; position: -webkit-sticky; position: collante; en bas: 80px; z-index: -1; 

    Et voilà, l'élément de page individuel avec l'effet de révélation sur le défilement est terminé. Découvrez le stylo Codepen ci-dessous. Vous pouvez également trouver les deux cas d'utilisation sur notre page Github.