Saat ini, seiring dengan semakin besarnya ukuran monitor pengguna, tata letak lebar padat 1024*768 sebelumnya menjadi semakin ketinggalan jaman. Bagi pengguna dengan layar besar, ruang kosong di kedua sisi memberikan kesan serius pada pandangan pertama sia-sia, sebagai desainer web Anda memiliki tanggung jawab untuk memberikan antarmuka pengguna yang baik kepada kelompok pengguna ini.
Tentu saja, untuk mengurangi pemborosan layar ini, menggunakan tata letak cairan elastis adalah solusi terbaik yang dapat memanfaatkan ruang layar sepenuhnya dan menampilkan konten dalam layar penuh, berapa pun resolusi Anda. Namun, karena berbagai keterbatasan, halaman web saat ini belum siap untuk sepenuhnya mengadopsi tata letak elastis yang lancar (terutama produsen browser yang menginjak-injak standar secara sembarangan dan dukungan yang tidak lengkap untuk standar CSS, dll.). Sebagai perantara antara pengguna dan produsen, kami hanya bisa beradaptasi dengan kesenjangan antara keduanya dengan mentalitas yang kompatibel. Oleh karena itu, sebagai solusi transisi, ada tata letak seperti itu: tata letak elastis + lebar tetap.
Elastisitas yang disebutkan di sini berarti latar belakang menyesuaikan dengan lebar layar, sedangkan lebar tetap berarti konten teks dapat dipusatkan secara otomatis di layar lebar atau layar sempit. Bertahan dalam celah untuk memenuhi kebutuhan pengguna dengan ukuran resolusi berbeda. Desain yang ditunjukkan di bawah ini adalah contoh tipikal.
Tanpa basa-basi lagi, mari kita mulai membuat struktur tata letak seperti ini.
Pertama, bangun lapisan struktur:
<div id="pembungkus"> <div id="utama" class="clearfix"> <div id="tajuk"> <div id="inheader"></div> </div> <div id="konten"></div> </div> </div> <div id="footer"> <div id="infoot"></div> </div> |
Menganalisis lapisan struktural. Sebuah halaman web umumnya mencakup tiga bagian: header, area konten, dan footer. Kita meletakkan header dan konten dalam lapisan penampung, bernama wrapper, dan memisahkan footer, bernama wrapper. Mengapa didesain seperti ini? Kami ingin footer ini benar-benar berada di bawah meskipun area kontennya kurang dari satu layar.
Kami mengatur lebar kedua container, wrapper dan footer, menjadi 100% sehingga secara otomatis beradaptasi dengan lebar layar. Dan atur juga area header menjadi lebar 100%. Dengan cara ini, kita bisa menyisipkan gambar yang bisa di-tile secara horizontal di header dan footer, sehingga latar belakang header dan footer bisa memenuhi seluruh ruang layar secara horizontal di layar besar.
Sedangkan untuk konten teks utama, pendekatan umum kami adalah menampilkannya di tengah ketika resolusinya lebih besar, menyisakan ruang kosong di kedua sisi. Karena area header telah disetel ke lebar 100%, kami menambahkan lapisan kontainer lain di header, yang berfungsi sebagai pembawa konten teks header sebenarnya. Kami kemudian menetapkan nilai lebar tetap untuknya, misalnya lebar 960 piksel dan biarkan ia terpusat dengan sendirinya.
#inheader{width:960px;height:110px; margin:0 auto; } |
Dengan cara ini, teks utama header halaman mengapung di lapisan atas haeader efek header, yang secara otomatis dapat menyesuaikan resolusi layar yang lebih besar.
Dengan cara yang sama, footer juga dapat diimplementasikan menggunakan metode ini.
Pada layer struktural di atas, saya tidak menggunakan cara ini pada area konten tengah, namun melakukan sedikit perubahan. Kita dapat melihat bahwa pada area konten, tidak ada container yang tertanam, melainkan hanya satu container. Apa yang harus kita lakukan jika kita ingin mencegah kedua sisi teks tampak kosong pada resolusi tinggi? Tentu saja, Anda dapat menggunakan metode header dan footer dan menambahkan div ke kontennya. Tentu saja, untuk mengurangi penumpukan, kita bisa menggunakan solusi. Kita dapat menambahkan gambar yang sangat besar ke latar belakang badan dan menggunakan posisi latar belakang untuk memposisikan dan memusatkan gambar sehingga gambar di kedua sisi area konten ditampilkan.
Blog ini adalah kasus khusus. Jika Anda melihat gambar di kedua sisi blog ini dengan resolusi tinggi dan kemudian memperkecil jendelanya, Anda dapat melihat bahwa hanya sebagian kecil gambar di kedua sisi yang ditampilkan pada 1024* 768, sedangkan teks utama selalu ditampilkan di tengah.
Untuk mendemonstrasikan efeknya, kami menambahkan beberapa penyesuaian warna lainnya, dan gaya akhirnya adalah sebagai berikut:
*{margin:0;padding:0;} html, isi, #wrapper {tinggi: 100%;ukuran font:12px;} #wrapper{width:100%;latar belakang:#777;} badan > #wrapper {tinggi:otomatis; tinggi minimum:100%;} #main {padding-bottom: 54px;min-width:960px;}/* Harus menggunakan tinggi yang sama dengan footer, lebar minimum dapat diselesaikan dengan menambahkan JS di ie6*/ #header{text-align:center;color:#fff;background:#333;} #inheader{width:960px;height:110px;line-height:110px;margin:0 auto;background:#CC9933;} h3{ukuran font:14px;tinggi garis:50px;} #inheader p{ukuran font:12px;tinggi garis:30px;} #footer { posisi: relatif; margin-top: -54px; /* Nilai negatif tinggi footer*/ tinggi: 54px;/* tinggi footer*/ lebar:100%; min-width:960px;/*Lebar minimum diselesaikan dengan menambahkan JS di ie6*/ jelas: keduanya; latar belakang:#666; perataan teks:tengah; warna:#fff; } #infoot{height:54px;line-height:54px;width:960px;margin:0 auto;background:#CC9966;} #footer p{tinggi baris:26px;} #content{background:#999;width:960px;margin:0 auto;height:692px;} #content p{tinggi baris:30px;padding:0 30px;warna:#fff;} /*Catatan: Yang perlu diperhatikan adalah nilai padding #main, tinggi footer dan nilai margin negatif harus konsisten. Berikut ini adalah Clearfix Hack*/ penutupan float universal yang terkenal .clearfix:setelah { isi: "."; tampilan: blok; tinggi: 0; jelas: keduanya; visibilitas: tersembunyi;} .clearfix {tampilan: blok sebaris;} /* Menyembunyikan dari IE-mac */ * html .clearfix { tinggi: 1%;} .clearfix {tampilan: blok;} /* Akhiri penyembunyian dari IE-mac */ |