पूर्ण ऊंचाई का विस्तार करने के लिए div के लिए


80

क्या एक ऐसी विधि है जिसका उपयोग मैं डिव के लिए पूरी ऊंचाई तक कर सकता हूं? मुझे इसमें एक चिपचिपा पाद मिला है।

यहां वेब पेज: वेबसाइट को हटा दिया गया है । मैं जिस मध्य बिट के बारे में बात कर रहा हूं वह है सफेद div, midcontent जिसमें CSS मान हैं:

.midcontent{
     width:85%;
     margin:0 auto;
     padding:10px 20px;
     padding-top:0;
     background-color:#FFF;
     overflow:hidden;
     min-height:100%;
     max-width:968px; 
     height:100%;
}

तो हाँ, स्पष्ट रूप से height:100%काम नहीं किया। इसके अतिरिक्त, सभी माता-पिता के कंटेनरों की ऊंचाई निर्धारित है।

यहाँ सामान्य संरचना है

<body>
    <div id="wrap">
        <div id="main">
            <div class="headout">
                <div class="headimg"></div>
            </div>
            <div class="midcontainer"></div>
        </div>
    </div>
    <div id="footer">
        <div class="footer"></div>
    </div>

यह एक बहुत ही सामान्य प्रश्न है, आपका हल लगभग निश्चित रूप से अन्य उत्तरों में मिलेगा: stackoverflow.com/search?q=css+div+100 या stackoverflow.com/search?q=css+div+height
Ben

2
मैं फंस गया, उनमें से ज्यादातर एक ही बात कहते हैं। मैंने आवेदन किया है जो कहा गया है, अभी भी तय नहीं हुआ है।
सहन करें

1
मुझे यकीन नहीं है कि आपका प्रश्न पर्याप्त स्पष्ट है। क्या आप किसी ऐसी चीज की तलाश कर रहे हैं जो "मिडकॉनटेनर" को "हेडआउट" और "पाद" के बीच पूर्ण शेष स्थान ले ले ? क्योंकि वह निश्चित रूप से 100% के बराबर नहीं है
cesarsalazar

जवाबों:


138

क्या आपको अपने CSS में html और बॉडी टैग की ऊंचाई सेट करना याद था? यह आम तौर पर है कि मैंने पूरी ऊंचाई तक जाने के लिए DIVs कैसे प्राप्त किए हैं:


<html>
  <head>
    <style type="text/css">

      html,body { height: 100%; margin: 0px; padding: 0px; }
      #full { background: #0f0; height: 100% }

    </style>
  </head>
  <body>
    <div id="full">
    </div>
  </body>
</html>




मुझे एक ही समस्या है, लेकिन यद्यपि मैंने शरीर की ऊंचाई 100% तक निर्धारित की है, यह काम नहीं करता है। लिंक यदि आप पोर्टफोलियो पर क्लिक करते हैं, तो एक श्रेणी चुनें, और फिर एक थंबनेल पर क्लिक करें, एक स्लाइड शो दिखाई देता है। स्लाइड शो की पृष्ठभूमि पूरे पृष्ठ तक नहीं है, हालांकि इसकी ऊंचाई 100% है।
१६

2
मुझे लगता है कि कोड सही है, लेकिन सवाल गलत है: यह पूछना चाहिए कि क्या आपने शरीर और html टैग को 100% पर सेट किया है। क्योंकि किसी तरह html टैग आउटपुट को अलग-अलग तरीकों से भी प्रभावित कर सकता है ...
एलेक्सिस विल्के

2
किसी तरह html 100% केवल दृश्यमान स्क्रीन को कैप्चर करता है। क्रोम devtool का उपयोग करते हुए, जब मैं "html" तत्व का चयन करता हूं, तो यह दृश्य पृष्ठ के अंत में समाप्त होता है, जब मैं इसे नीचे स्क्रॉल करता हूं जैसे कि यह अब <html> का हिस्सा नहीं है
नाथन एच

vh का उपयोग करने के बारे में क्या?
mfnx

38

यह कुछ मदद हो सकती है: http://www.webmasterworld.com/forum83/200.htm

एक प्रासंगिक उद्धरण:

इसे पूरा करने के अधिकांश प्रयास संपत्ति और मूल्य को निर्दिष्ट करके किए गए थे: div {height: 100%} - यह अकेले काम नहीं करेगा। इसका कारण यह है कि माता-पिता के बिना परिभाषित ऊँचाई, div {ऊँचाई: 100%;} में 100% प्रतिशत कारक कुछ भी नहीं है, और div के मान के लिए डिफ़ॉल्ट होगा {ऊँचाई: ऑटो;} - ऑटो एक "के रूप में आवश्यक मूल्य है" "जो वास्तविक सामग्री द्वारा शासित होता है, ताकि div {height: 100%} एक = केवल सामग्री की मांग के अनुसार ही आगे बढ़े।

समस्या का समाधान मूल कंटेनर में एक ऊंचाई मान निर्दिष्ट करके पाया जाता है, इस मामले में, शरीर तत्व। ऊंचाई के 100% को शामिल करने के लिए अपने शरीर को स्टेली लिखना आवश्यक मूल्य की आपूर्ति करता है।

html, body { 
  margin:0; 
  padding:0; 
  height:100%; 
}

2
हाय, सभी माता-पिता के कंटेनर हैं height:100%
भालू

2
@ शमिल, html टैग सहित सभी माता-पिता? हो सकता है कि यह आपकी समस्या हो। मैं ज्यादातर html टैग के बारे में एक ग्राफिकल टैग के रूप में भूल जाता हूं।
एलेक्सिस विल्के

@AlexisWilke हां, यह था - शायद ही कभी मुझे नहीं शामिल करना html टैग
भालू

3
मेरे आश्चर्य के लिए फॉर्म टैग सहित
एडम

मुख्य तत्व शरीर और HTML टैग्स पर 100% ऊंचाई है
luismesas

9

यह एक पुराना सवाल है। सीएसएस विकसित हुआ है। अब vh(व्यूपोर्ट ऊंचाई) इकाई है, नए लेआउट विकल्प जैसे कि flexboxया CSS gridक्लीनर तरीके से शास्त्रीय डिजाइन प्राप्त करने के लिए।


2

मामले में भी html और शरीर की ऊँचाई को 100% पर सेट करना आपके लिए सब कुछ गड़बड़ कर देता है जैसा कि इसने मेरे लिए किया था, इसके लिए निम्न कार्य निम्नलिखित हैं:

height: calc(100vh - 33rem)

- 33rem तत्वों एक हम पूरी ऊंचाई, यानी, 100vh ले जाना चाहते हैं के बाद आने वाले की ऊंचाई है। ऊंचाई को घटाकर, हम यह सुनिश्चित करेंगे कि कोई अतिप्रवाह न हो और यह हमेशा उत्तरदायी होगा (यह मानते हुए कि हम px के बजाय रेम के साथ काम कर रहे हैं)।


बस यह सुनिश्चित करें कि आप ऐसा न करें height: calc(100vh -33rem)जहां नकारात्मक चिह्न मान को छूता है क्योंकि यह अमान्य सीएसएस होगा। इसके अलावा 33rem एक पिक्सेल मूल्य के रूप में अच्छी तरह से बदला जा सकता है।
रिच फिनाले

1

यदि 100% ऊंचाई सेट करना काम नहीं करता है, तो min-height = 100% div के लिए प्रयास करें। आपको अभी भी html टैग सेट करना है।

html {
    height: 100%;
    margin: 0px;
    padding: 0px;
    position: relative;
}

#fullHeight{

    width: 450px;
    **min-height: 100%;**
    background-color: blue;

}
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.