Bagaimana untuk membuat: memperkecil menu navigasi saat menggulir
- Halaman sebelumnya Sembunyikan navigasi saat menggulir
- Halaman berikutnya Navigasi yang lepas
Belajar bagaimana menggunakan CSS dan JavaScript untuk mengatur ukuran navigasi saat menggulir.
Bagaimana untuk memperkecil navigasi saat menggulir
Langkah pertama - Tambahkan HTML:
Buat navigasi:
<div id="navbar"> <a href="#default" id="logo">CompanyLogo</a> <div id="navbar-right"> <a class="active" href="#home">Home</a> <a href="#contact">Contact</a> <a href="#about">About</a> </div> </div>
Langkah kedua - Tambahkan CSS:
Atur gaya navigasi:
/* Buat navigasi tebal/tertahan */ #navbar { overflow: hidden; background-color: #f1f1f1; padding: 90px 10px; /* Margin yang besar, akan mengecil saat menggulir (dengan JS) */ transition: 0.4s; /* Menambah efek transisi ketika margin dalam berkurang */ position: fixed; /* Navigasi tebal/tertahan */ width: 100%; top: 0; /* Pada atas */ z-index: 99; } /* Atur gaya tautan navigasi */ #navbar a { float: left; color: black; text-align: center; padding: 12px; text-decoration: none; font-size: 18px; line-height: 25px; border-radius: 4px; } /* Atur gaya logo */ #navbar #logo { font-size: 35px; font-weight: bold; transition: 0.4s; } /* Atur gaya tautan saat menggerakkan mouse */ #navbar a:hover { background-color: #ddd; color: black; } /* Atur gaya tautan yang aktif/berlaku saat ini */ #navbar a.active { background-color: dodgerblue; color: white; } /* Tampilkan beberapa tautan di sisi kanan */ #navbar-right { float: right; } /* Tambahkan responsivitas - tampilkan navigasi secara vertikal daripada horizontal di layar yang lebar kurang dari 580 pixel */ @media screen and (max-width: 580px) { #navbar { padding: 20px 10px !important; /* gunakan !important untuk memastikan bahwa JavaScript tidak akan menutupi sisip di layar kecil */ } #navbar a { float: none; display: block; text-align: left; } #navbar-right { float: none; } }
Tahap ketiga - Tambahkan JavaScript:
// saat pengguna menggulir ke bawah dari atas dokumen 80 pixel, atur lebar sisip dan ukuran huruf logo window.onscroll = function() {scrollFunction()}; function scrollFunction() { if (document.body.scrollTop > 80 || document.documentElement.scrollTop > 80) { document.getElementById("navbar").style.padding = "30px 10px"; document.getElementById("logo").style.fontSize = "25px"; }else{ document.getElementById("navbar").style.padding = "80px 10px"; document.getElementById("logo").style.fontSize = "35px"; } }
- Halaman sebelumnya Sembunyikan navigasi saat menggulir
- Halaman berikutnya Navigasi yang lepas