Saya memiliki div pembungkus yang terdiri dari 2 div yang bersebelahan. Di atas wadah ini saya memiliki div yang berisi tajuk saya. Pembungkus div harus 100% dikurangi tinggi header. Headernya sekitar 60 px. Ini sudah diperbaiki. Jadi pertanyaan saya adalah: bagaimana cara mengatur tinggi div pembungkus saya menjadi 100% dikurangi 60 px?
<div id="header"></div>
<div id="wrapper">
<div id="left"></div>
<div id="right"></div>
</div>
Jawaban:
Berikut ini adalah css yang berfungsi, diuji di bawah Firefox / IE7 / Safari / Chrome / Opera.
"overflow-y" tidak disetujui w3c, tetapi setiap browser utama mendukungnya. Dua div Anda # kiri dan kanan akan menampilkan bilah gulir vertikal jika isinya terlalu tinggi.
Agar ini bekerja di bawah IE7, Anda harus memicu mode yang sesuai standar dengan menambahkan DOCTYPE:
sumber
position: relative
di wadah. Kemudian tempatkan wadah di mana saja Anda suka di halaman.Di CSS3 Anda bisa menggunakan
sumber
Jika Anda perlu mendukung IE6, gunakan JavaScript jadi kelola ukuran pembungkus div (atur posisi elemen dalam piksel setelah membaca ukuran jendela). Jika Anda tidak ingin menggunakan JavaScript, maka ini tidak dapat dilakukan. Ada beberapa solusi tetapi berharap satu atau dua minggu untuk membuatnya berfungsi dalam setiap kasus dan di setiap browser.
Untuk peramban modern lainnya, gunakan css ini:
sumber
hebat ... sekarang saya telah berhenti menggunakan% he he he ... kecuali untuk wadah utama seperti yang ditunjukkan di bawah ini:
dan inilah css:
Saya menguji ini di semua browser yang dikenal dan berfungsi dengan baik. Apakah ada kekurangan menggunakan cara ini?
sumber
Anda dapat melakukan sesuatu seperti tinggi: calc (100% - nPx); misalnya tinggi: calc (100% - 70px);
sumber
Pastikan saat menggunakan lebih sedikit
Kalau tidak, tidak akan mengkompilasinya dengan benar
sumber
Ini tidak persis menjawab pertanyaan seperti yang diajukan, tetapi itu menciptakan efek visual yang sama yang Anda coba capai.
sumber
Dalam contoh ini Anda dapat mengidentifikasi area yang berbeda:
sumber
Saya belum melihat yang seperti ini diposting, tapi saya pikir saya akan meletakkannya di sana.
Lalu CSS:
Ini jsfiddle yang berfungsi
Catatan: Saya tidak tahu apa kompatibilitas browser untuk ini. Saya hanya bermain-main dengan solusi alternatif dan ini sepertinya bekerja dengan baik.
sumber
Gunakan div pembungkus luar yang diatur ke 100% dan kemudian pembungkus div batin Anda 100% sekarang relatif terhadap itu.
Saya pikir pasti ini bekerja untuk saya, tetapi ternyata tidak:
sumber
Jika Anda tidak ingin menggunakan penentuan posisi absolut dan semua jazz itu, berikut ini adalah perbaikan yang ingin saya gunakan:
html Anda:
css Anda:
sumber
#header
harusmargin-top:-60px;
. Kedua,height:100%
berarti tinggi akan 100% dari tinggi elemen induk, tidak termasuk margin, padding dan batas. Bergantung pada pengaturan gulir Anda, ini akan menyebabkan bilah gulir muncul atau konten Anda dipotong.