मैं एक वेब एप्लिकेशन पर काम कर रहा हूं, जहां मुझे पूरी स्क्रीन की ऊंचाई भरने के लिए सामग्री चाहिए।
पृष्ठ में एक हेडर है, जिसमें एक लोगो और खाता जानकारी है। यह एक मनमाना ऊंचाई हो सकती है। मैं चाहता हूं कि सामग्री पृष्ठ शेष पृष्ठ को नीचे तक भरें।
मेरे पास एक हेडर div
और एक सामग्री है div
। फिलहाल मैं लेआउट के लिए एक तालिका का उपयोग कर रहा हूं जैसे:
CSS और HTML
#page {
height: 100%; width: 100%
}
#tdcontent {
height: 100%;
}
#content {
overflow: auto; /* or overflow: hidden; */
}
<table id="page">
<tr>
<td id="tdheader">
<div id="header">...</div>
</td>
</tr>
<tr>
<td id="tdcontent">
<div id="content">...</div>
</td>
</tr>
</table>
पृष्ठ की पूरी ऊंचाई भरी हुई है, और किसी स्क्रॉलिंग की आवश्यकता नहीं है।
कंटेंट डिव के अंदर की किसी भी चीज़ के लिए, सेटिंग top: 0;
हेडर के ठीक नीचे होगी। कभी-कभी सामग्री एक वास्तविक तालिका होगी, जिसकी ऊंचाई 100% होगी। header
अंदर डालने से content
यह काम नहीं कर पाएगा।
वहाँ का उपयोग किए बिना एक ही प्रभाव को प्राप्त करने का एक तरीका है table
?
अपडेट करें:
सामग्री के अंदर के तत्वों की div
ऊँचाई प्रतिशत के साथ-साथ प्रतिशत तक होगी। तो 100% के अंदर कुछ div
इसे नीचे तक भर देगा। 50% पर दो तत्वों के रूप में।
अपडेट 2:
उदाहरण के लिए, यदि हेडर स्क्रीन की ऊँचाई का 20% लेता है, तो 50% पर निर्दिष्ट तालिका #content
स्क्रीन स्पेस का 40% हिस्सा लेगी। अब तक, एक टेबल में पूरी चीज़ लपेटना ही एकमात्र काम है।
display:table
गुणों और संबंधित गुणों का उपयोग करके , यह एक बहुत ही समान प्रश्न का उत्तर देख सकते हैं।