Comment faire défiler des contenus DIV spécifiques à l'aide de la barre de défilement du navigateur
Introduction
De nombreux sites Web, comme Gizmodo, ont une mise en page où une partie du contenu défile avec la barre de défilement principale du navigateur tandis que d'autres parties restent fixes. Bien que cela puisse paraître complexe, cela peut être réalisé entièrement via CSS.
Solution
Pour créer cet effet, nous devons considérer plusieurs aspects :
Implémentation
CSS :
html, body, * { padding: 0; margin: 0; } .wrapper { min-width: 500px; max-width: 700px; margin: 0 auto; } #content { margin-right: 260px; /* = sidebar width + some white space */ } #overlay { position: fixed; top: 0; width: 100%; height: 100%; } #overlay .wrapper { height: 100%; } #sidebar { width: 250px; float: right; max-height: 100%; } #sidebar:hover { overflow-y: auto; } #sidebar>* { max-width: 225px; /* leave some space for vertical scrollbar */ }
Marquage :
<div class="wrapper"> <div>
Explication :
Empêcher le défilement lors du survol de la barre latérale
Si vous le souhaitez, la barre latérale peut être empêchée de lancer le défilement lors du survol en modifiant le Structure HTML et CSS :
CSS :
#wrapper { min-width: unset; max-width: unset; height: 100%; } #content { margin-right: 0; } #sidebar { position: fixed; top: 0; }
Marquage :
<div>
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!