Maison > interface Web > tutoriel CSS > Pouvez-vous rendre un en-tête de tableau collant dans un div défilant en utilisant \'position: sticky\' ?

Pouvez-vous rendre un en-tête de tableau collant dans un div défilant en utilisant \'position: sticky\' ?

DDD
Libérer: 2024-10-29 19:55:02
original
676 Les gens l'ont consulté

Can you make a table header sticky within a scrolling div using 'position: sticky'?

En-têtes collants dans les divisions de table défilante

Avec l'introduction récente de « position : collante » dans Webkit, les développeurs explorent ses utilisations potentielles. Une question qui se pose est de savoir s'il peut être utilisé pour conserver l'en-tête (thead) d'un tableau au sein d'un div défilant.

Concept

Par défaut, 'position : sticky' limite sa fonctionnalité à l'élément parent, le rendant inadapté à ce scénario spécifique. Cependant, il est possible d'exploiter le « positionnement collant » pour obtenir l'effet souhaité.

Solution

Pour rendre l'en-tête du tableau collant dans le div défilant, vous pouvez ajoutez la ligne suivante dans votre feuille de style :

thead th { position: sticky; top: 0; }
Copier après la connexion

Assurez-vous que votre table contient les éléments 'thead' et 'th' nécessaires pour appliquer le style.

Mise en œuvre

<table>
    <thead>
        <tr>
            <th>column 1</th>
            <th>column 2</th>
            <th>column 3</th>
            <th>column 4</th>            
        </tr>    
    </thead>
    <tbody>
      // your body code
    </tbody>
</table>
Copier après la connexion

Pour plusieurs lignes dans le « thead », utilisez ceci pour maintenir l'adhérence sur la première ligne :

thead tr:first-child th { position: sticky; top: 0; }
Copier après la connexion

Support du navigateur

Depuis mars 2018, « position : sticky » est largement pris en charge dans les navigateurs modernes : https://caniuse.com/#feat=css-sticky

Crédit

Cette solution a été initialement proposée par @ctf0 dans un commentaire du 3 décembre 2017.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal