Miten luodaan: liimattava/fiksoitu navigointirivi
- Edellinen sivu Pienennä navigointipalkki pyörittäessä
- Seuraava sivu Navigointipalkki kuvassa
Opi, miten luodaan 'liimattava' navigointirivi CSS:n ja JavaScript:n avulla.
Miten luodaan liukuvainen navigaatiopalkki
Ensimmäinen vaihe - lisää HTML:
Luo navigaatiopalkki:
<div id="navbar"> <a href="#home">Home</a> <a href="#news">News</a> <a href="#contact">Contact</a> </div>
Toinen vaihe - lisää CSS:
Aseta navigaatiopalkin tyyli:
/* Aseta navigaatiopalkin tyyli */ #navbar { overflow: hidden; background-color: #333; } /* Navigaatiopalkin linkit */ #navbar a { float: left; display: block; color: #f2f2f2; text-align: center; padding: 14px; text-decoration: none; } /* Sivun sisältö */ .content { padding: 16px; } /* Kun saavutetaan sen korkeus, lisää sticky-luokan JavaScriptin avulla navigaatiopalkkiin */ .sticky { position: fixed; top: 0; width: 100%; } /* Lisää sivun sisällölle hieman yläsisennystä, jotta ei ole yllättäviä nopeita siirtymisiä (koska navigaatiopalkki saa uuden sijainnin sivun ylärivillä (position:fixed ja top:0)) */ .sticky + .content { padding-top: 60px; }
Kolmas vaihe - lisää JavaScript:
// Kun käyttäjä pyörittää sivua, suorita myFunction window.onscroll = function() {myFunction()}; // Saat navigaatiopalkin var navbar = document.getElementById("navbar"); // Saat navigaatiopalkin etäisyyden var sticky = navbar.offsetTop; // Kun saat navigaatiopalkin korkeuden, lisää sille sticky-luokan. Kun poistut korkeudesta, poista "sticky"-luokka. function myFunction() { if (window.pageYOffset >= sticky) { navbar.classList.add("sticky") } navbar.classList.remove("sticky"); } }
- Edellinen sivu Pienennä navigointipalkki pyörittäessä
- Seuraava sivu Navigointipalkki kuvassa