Halo, para pembaca situs blog yang budiman. Ini lebih merupakan catatan untuk diri saya sendiri, agar tidak melupakan apa sebenarnya yang saya lakukan ketika ingin mengembalikan semuanya. Semuanya bermula ketika salah satu pembaca menyarankan untuk menulis tentang sebuah plugin untuk WordPress bernama Q2W3 Fixed Widget (Sticky Widget), yang dapat membuat widget apa pun di sidebar mengambang atau, dengan kata lain, diperbaiki.
Itu. Saat Anda menggulir halaman, Anda akan melihat bahwa bagian utama sidebar akan naik, tetapi widget yang terletak di bagian paling bawah akan tetap berada di area tampilan tidak peduli seberapa jauh Anda memindahkan teks ke bawah. Saya akan segera membuat reservasi bahwa memasang iklan kontekstual dengan cara ini dilarang dan Anda dapat dihukum karenanya (ternyata di komentar, YAN mengizinkannya, tetapi Adsense melarangnya).
Pluginnya bagus, tetapi widget di tema saya dinonaktifkan, jadi saya memecahkan masalah ini menggunakan beberapa baris kode JavaScript yang saya temukan di Internet.
Hasilnya, menu teratas saya diperbaiki di bagian paling atas viewport (sebenarnya, kode CSS saja sudah cukup untuk ini, tetapi kami tidak mencari cara yang mudah), dan bagian bawah sidebar diperbaiki di bagian atas. kanan layar saat Anda mencapainya saat menggulir halaman. Saya tidak tahu apakah ini akan ada gunanya, tapi solusinya sangat sederhana.
Mengapa memperbaiki menu dan membuat sidebar mengambang? Mengapa memperbaiki menu teratas, Anda bertanya? Secara umum, ini adalah eksperimen kecil dengan topik perbaikan. Secara hipotesis murni, kita dapat berasumsi bahwa hal ini dapat menyebabkan peningkatan jumlah halaman yang dilihat dan waktu yang dihabiskan pengguna di situs.
Di sisi lain, intrusi yang berlebihan dari panel tetap tersebut dapat menimbulkan reaksi negatif dari pembaca, sehingga pertanyaan tentang kegunaan tindakan ini tetap terbuka. Anda harus melihat hasilnya setelah seminggu penggunaan - jika menu tidak lagi diperbaiki (dipaku di tepi atas area tampilan), maka percobaan gagal. Untuk berjaga-jaga, saya akan mengambil tangkapan layar tentang bagaimana semua itu terjadi.
Sidebar mengambang di WordPress dibuat untuk alasan yang sedikit berbeda - untuk menarik lebih banyak perhatian pada sesuatu. Pada prinsipnya, di sini Anda dapat memasukkan daftar kategori dan daftar postingan populer atau terbaru, yang sekali lagi akan mencoba melakukan tugas untuk meningkatkan perilaku. Namun paling sering, iklan ditempatkan di blok mengambang (iklan kontekstual tidak diperbolehkan, seperti yang telah saya sebutkan), yang, secara hipotesis, akan meningkatkan pendapatan webmaster. Mari kita lihat hasilnya dalam seminggu.
Cara Memperbaiki Menu Teratas di WordPress Saya menemukan solusi untuk diri saya sendiri di Internet. Untuk menggunakan metode ini, perpustakaan jQuery harus disertakan. Cara melakukan ini dijelaskan secara rinci di artikel tentang memuat konten.
Jika Anda ingat, dalam artikel tentang mengoptimalkan kecepatan memuat halaman, Anda perlu mencoba menggabungkan semua CSS dan JS menjadi satu yang umum (dalam arti dua - satu untuk gaya dan yang lainnya untuk skrip). Jadi, sebenarnya, saya menambahkan baris kode yang diberikan tepat di bawah ke file tersebut. Meskipun Anda dapat menambahkannya langsung ke kode Html, mengelilinginya dengan tag skrip. Misalnya, ini bisa dilakukan di template header.php di dalam tag head.
Anda juga dapat menerapkan perbaikan menu atas menggunakan CSS murni - ini akan membantu kami. Sebenarnya, pemosisian juga digunakan di sini menggunakan properti CSS ini, tetapi menu tetap juga dapat mulai ditampilkan tidak segera, tetapi beberapa saat setelah dimulainya pengguliran (pada jarak tertentu dari atas).
Dalam kasus saya, kode untuk memperbaiki menu atas terlihat seperti ini:
$(fungsi())( $(jendela).scroll(fungsi() ( var top = $(dokumen).scrollTop(); if (atas< 10) $("#navi").css({top: "0", position: "relative"});
else $("#navi").css({top: "0px", width: "100%", position: "fixed"});
});
});
Izinkan saya mengingatkan Anda bahwa Anda dapat menempelkan potongan kode ini ke:
File berekstensi .js yang berada di folder dengan tema yang Anda gunakan (/wp-content/themes/theme). Ini cocok untuk Anda hanya jika ada baris yang ditulis untuk itu di file header.php untuk memuatnya bersama dengan halaman web situs Anda, yang mungkin terlihat seperti ini:Anda dapat menggunakan file header.php itu sendiri, mengapit kode ini di antara tag head pembuka dan penutup dan membingkainya dalam tag skrip, misalnya, seperti ini: $(function())( $(window).scroll(function()) ( var top = $( dokumen).scrollTop(); if (atas< 10) $("#navi").css({top: "0", position: "relative"});
else $("#navi").css({top: "0px", width: "100%", position: "fixed"});
});
});
Anda juga dapat menulis kode ini di tag skrip di tempat lain mana pun. Hal utama adalah memuatnya di halaman blog yang tepat. Misalnya, Anda dapat melakukannya di footer.php sebelum tag body penutup.
Sekarang mari kita lihat langsung kode ini. Ternyata setelah 10 piksel dari atas, posisi relatif digantikan oleh posisi tetap (lihat artikel di link yang diberikan tepat di atas). Jika perlu, maka di baris dengan else Anda dapat memilih bukan nol sebagai nilai atas, dan kemudian menu yang ditetapkan di atas akan mundur dari tepi atas area pandang dengan nilai piksel ini (menurut saya, ini tidak perlu ).
Berbeda dengan kode aslinya, saya juga harus menambahkan lebar: "100%", karena jika tidak, ukuran menu akan berkurang lebarnya, yang akan merusak keseluruhan gambar.
Begini, untuk lebih jelasnya, saya akan memberikan kode Html yang digunakan untuk membentuk menu teratas di template blog WordPress saya (ada di file header.php saya dari ):
- Baru
- Terbaik
- di mana mendapatkan uang
- Periklanan
- Peta situs
- Kontak
- Atas
Dalam template Anda, kemungkinan besar, tampilan item menu akan ditentukan menggunakan, misalnya, konstruksi (fungsi) seperti itu, tetapi bukan itu intinya.
-
Harap dicatat bahwa jika ada tanda kutip tunggal dalam kode yang diapit echo "" , tanda kutip tersebut harus di-escape, mis. beri tanda garis miring terbalik (\") di depannya masing-masing, tanpa tanda kurung tentunya.
Secara umum, ternyata apa yang terjadi. Anda harus memutuskan sendiri bagaimana secara spesifik melampirkan ini ke topik Anda - ketika Anda punya waktu, akan menyenangkan untuk "memutar otak". Terima kasih.
Semoga beruntung untukmu! Sampai jumpa lagi di halaman situs blog
Anda mungkin tertarik
WebPoint PRO adalah tema WordPress responsif dengan fungsionalitas luas dan optimasi mesin pencari teknis yang kompeten
Share42 - skrip untuk menambahkan tombol jejaring sosial dan bookmark ke situs (ada opsi panel mengambang)
Halo, hari ini kami akan berbicara dengan Anda tentang cara membuat bilah navigasi Anda sendiri untuk sebuah situs web. Ini digunakan di hampir semua sumber daya Internet, jadi setiap pengembang harus dapat membuat elemen ini.
Penjelasan untuk artikel tersebut: - "Bilah Sisi" - panel navigasi situs.
- "Posisi" adalah properti di CSS.
- "Atas", "kiri", "kanan", "bawah" - properti pergerakan CSS.
- WordPress adalah sistem manajemen konten/CMS situs web.
- Webix - perpustakaan UI. Memungkinkan Anda membuat elemen tabel.
- Tampilan adalah fungsi JavaScript.
Artikel ini akan menunjukkan berbagai cara membuat bilah navigasi, baik secara manual maupun menggunakan pembuat situs khusus. Contoh kami menggunakan WordPress.
Bagaimana cara membuat sidebar secara manual? CSS & HTML Sekarang kami akan menunjukkan cara pengembangan tradisional, yaitu menulis kode di editor teks. Untuk melakukan ini, Anda perlu membuka dokumen HTML dan CSS di editor kode.
Membuat sidebar di sisi kanan. HTML & CSS Paling sering, bilah navigasi terletak di header situs atau di sisi kanannya. Dalam kasus kedua, tata letak 2 kolom biasanya digunakan.
Ada baiknya jika Anda memiliki tata letak yang sudah jadi terlebih dahulu, karena Anda mengetahui lebar blok navigasi. Jika tidak ada tata letak, hal ini tidak akan mengganggu pembangunan.
Perhatian! Saat membuat sidebar dan elemen website lainnya, siapkan tata letak yang sudah jadi terlebih dahulu. Dengan berfokus pada hal itu Anda akan menyederhanakan proses pengembangan.
Bilah navigasi dapat dibuat menggunakan daftar dan blok biasa. Jika Anda menggunakan daftar, nonaktifkan properti "dekorasi teks" untuk daftar tersebut.
Contoh kita menggunakan desain blok div.
Pertama, kita membuat blok div umum di mana kolom akan ditempatkan. Mari kita buat beberapa kelas untuk itu; dalam contoh kita, kelas tata letak digunakan, tetapi ini tidak terlalu mempengaruhi proses pengembangan.
Blok utama akan digunakan untuk membuat positioning dan juga ukuran.
Pertama, mari kita tentukan posisinya. Untuk wadah umum, kami mengatur posisi relatif - properti (posisi: relatif). Properti (posisi: absolut) disetel untuk kolom.
Penggunaan tipe ini akan memudahkan Anda memposisikan speaker di dalam blok. Untuk melakukan ini, kita akan menggunakan properti gerakan: , , dan .
Dalam contoh kita, kodenya terlihat seperti ini:
HTML
Halaman Tes
Kolom 1
Kolom 2
Menyalin
CSS
Tata Letak (
posisi: relatif;
latar belakang: rgba(119, 115, 115, 0.58);
}
Sidebar, .content (posisi: absolut;)
Bilah Samping (
latar belakang: #C6DD7D;
Isi(
latar belakang: #F4ECCE;
Menyalin
Perhatian! Pastikan untuk menentukan lebar untuk setiap item navigasi individual. Faktanya adalah mereka memiliki posisi absolut, yang berarti lebarnya akan sama dengan lebar konten internal.
Kami juga ingin mencatat bahwa di , kolom kedua ditempatkan terlebih dahulu, lalu kolom pertama. Saat menggunakan metode ini, ini tidak menjadi masalah, karena kolom dapat dengan mudah ditukar.
Anda juga dapat menggunakan properti float untuk ini. Metode ini jauh lebih sederhana, karena didasarkan pada aliran elemen. Berkat itu, sidebat kita akan ditempatkan di sisi kanan.
Buat bilah navigasi di sisi kanan. HTML & CSS
Untuk membuat panel seperti itu, Anda dapat menggunakan markup yang sama seperti pada contoh pertama. Anda juga tidak perlu melakukan perubahan khusus pada kode CSS.
Anda perlu melakukan sedikit penyesuaian pada kode CSS Anda. Ini diperlukan agar menu terletak di sisi kanan. Kami tidak mengubah properti lebar dan posisi!
Bagaimana cara membuat sidebar di WordPress? Sekarang mari kita lihat metode yang sangat berbeda dari yang sebelumnya. Perbedaannya adalah Anda dapat membuat navigasi yang lebih baik hampir tanpa kode CSS atau HTML.
Anda tidak perlu menulis semua kode secara manual; semua pekerjaan akan dilakukan di konstruktor itu sendiri.
Saat menggunakan WordPress, Anda perlu mendaftarkan bilah navigasi dan menambahkan beberapa widget ke dalamnya.
Untuk mendaftarkan sidebar di WordPress, Anda perlu menulis beberapa fungsi dalam file PHP. Pada dasarnya Anda memerlukan array data yang akan mereferensikan widget dan tag divnya.
Dalam contoh kita, kita mempertimbangkan sidebar kanan, serta sidebar footer.
Beberapa kata tentang webix Ada kerangka khusus lain yang memungkinkan Anda membuat sidebar ini. Keuntungan utamanya adalah memungkinkan Anda membuat panel yang bagus hanya dengan menulis beberapa baris kode.
Pertama, Anda perlu mengunduh kerangka kerja ini. Setelah itu, berikan tautan ke gaya dan skripnya di dokumen HTML Anda.
Setelah ini, Anda dapat mulai membuat sidebar Anda. Untuk menempatkannya dalam kerangka ada fungsi khusus - tampilan. Yang akan menempatkan penempatan elemen.
Kelemahan dari kerangka ini adalah keterbatasannya. Saat menggunakannya, Anda tidak akan dapat membuat kreasi yang benar-benar unik, karena panel tidak dibatasi oleh imajinasi Anda, tetapi hanya oleh beberapa fungsi.
Kesimpulan Pada artikel ini, kita melihat beberapa cara dasar untuk membuat bilah navigasi, namun masih banyak lagi. Anda bahkan dapat menemukan metode Anda sendiri berdasarkan pekerjaan kami.
Contoh-contoh ini menunjukkan bilah navigasi sederhana. Jika Anda bekerja sedikit dengan kode sumber, Anda bisa mendapatkan sebuah mahakarya yang nyata.
Tag: Contoh paling sederhana dari sidebar mengambang tetap di HTML+CSS+JS.
Apa kekhasannya - saat menggulir, bilah sisi menempel ke bagian atas jendela, tetapi pada saat yang sama, ketika bilah sisi digulir ke footer, bilah samping terlepas dari bagian atas layar dan menempelkan bagian bawahnya ke bagian bawah. footer, sehingga tidak tumpang tindih dengan footer (footer harus tinggi). Jika Anda tahu apa yang saya maksud.
Contohnya diambil dari beberapa situs dan sangat primitif (dan ketinggalan jaman secara moral), hanya cocok untuk tata letak ini. Kode yang lebih universal dapat dilihat dalam artikel ini dan tulis kode Anda sendiri untuk proyek Anda.
Markup HTML halaman sederhana HEADER CONTENT FIXED SIDEBAR FOOTER Gaya CSS untuk blok konten .header ( lebar: 100%; latar belakang: ungu; tinggi: 80px; ) .content ( lebar: 80%; latar belakang: biru; tinggi: 800px; float : kiri; ) .sidebar ( lebar: 20%; latar belakang: hijau; tinggi: 100px; float: kanan; ) .sidebar.fixed ( posisi: tetap; kanan: 50%; margin-kanan: -50%; ) .footer (lebar: 100%; latar belakang: abu-abu; tinggi: 500px; jelas: keduanya; ) Skrip JS untuk sidebar tetap saat menggulir halaman Jangan lupa untuk menghubungkan jQuery
$(fungsi() ( var $window = $(window); var $sidebar = $(".sidebar"); var $sidebarTop = $sidebar.position().top; var $sidebarHeight = $sidebar.height() ; var $footer = $(".footer"); var $footerTop = $footer.position().top; $window.scroll(fungsi(acara) ( $sidebar.addClass("tetap"); var $scrollTop = $window.scrollTop(); var $topPosition = Matematika.max(0, $sidebarTop - $scrollTop); if ($scrollTop + $sidebarHeight > $footerTop) ( var $topPosition = Matematika.min($topPosition, $footerTop - $scrollTop - $sidebarHeight); $sidebar.css("atas", $topPosition ));
Apa saja persyaratan tata letaknya:
- Tata letak dua kolom karet
- sidebar tetap lebar 300px
- konten diregangkan ke seluruh lebar yang tersisa.
- footer ditekan ke bawah (dalam pelajaran ini saya tidak akan menunjukkan bagaimana hal ini dilakukan).
Masalah Css apa yang muncul saat menata tata letak seperti itu: Metode pertama. Jika Anda membuat blok melayang, Anda harus memberinya lebar tetap (Anda tidak dapat mengatur 1 sidebar menjadi 300px dan konten menjadi 100%). Dalam hal ini, konten akan meluncur ke bawah atau gulir horizontal 300px ke kiri akan muncul. Nah, yang terpenting adalah memahami bahwa metode ini tidak cocok untuk kita.
Metode 2. Banyak desainer tata letak menawarkan metode ini, apa yang mereka pikirkan?! Inti dari metode ini adalah Anda dapat mengatur sidebar menjadi float dengan lebar 300, tetapi kontennya tidak boleh melayang dan diberi margin-kiri:300px. Ini cara yang bagus dan semuanya tampak berjalan dengan baik. Sejujurnya, saya pikir ini adalah cara terbaik, namun metode ini memiliki kekurangannya. Alasan untuk meninggalkan metode ini adalah jika tiba-tiba dalam konten kita meletakkan, misalnya, menu dengan floating li atau blok float lainnya dan kemudian kita ingin menghapusnya menggunakan clear:both, maka batas bawah blok ini meluncur ke bawah ke tingkat batas bawah sidebar (Yang mana dan tidak aneh karena foat dibersihkan, hal ini dapat dihindari jika balok yang melayang diberi ketinggian yang tetap, tetapi tidak demikian halnya dengan pengaturan tetap tinggi).
3 cara. Anda dapat menggunakan position absolute untuk sidebar, namun hanya jika Anda benar-benar yakin bahwa tinggi konten akan lebih besar daripada sidebar, jika tidak, seluruh konten sidebar akan naik ke footer (bagaimanapun juga, positioning absolut akan mengeluarkannya dari sidebar. aliran umum).
tapi bagi saya ini juga bukan cara yang baik!
4 cara. “Cara yang sangat baik, jika ada kekurangan silahkan berkomentar. Tapi menurut saya ini cara yang terbaik.”
- Keuntungan metode ini: pertama, konten DOMe akan ditempatkan sebelum sidebar, yang bagus untuk mesin pencari.
- tidak ada yang pas di footer
- blok mana pun dapat dibersihkan dan tidak ada yang akan meluncur ke batas bawah (Inilah cara kami mengatasi masalah pada metode kedua).
Secara umum cara kerjanya: lihat kodenya, konten didahulukan, diikuti sidebar. atur pelampung ke dua blok ini (secara alami sidebar meluncur ke bawah). setelah itu kita atur properti sidebar margin-kiri: -100%. bagus, sudah kembali ke tempatnya, dan kami membuat indentasi konten dengan margin-lerft:300px.
html css .bilah samping(
lebar:300 piksel;
tampilan: blok;
mengapung: kiri;
margin: 0 0 0 -100%;
}
.isi(
lebar minimum:723 piksel;
tampilan: blok;
mengapung: kiri;
margin: 0 0 0 220 piksel;
}