यह एक रिपोर्ट की गई वेबकिट (क्रोम / सफारी) बग है, न्यूनतम ऊंचाई वाले माता-पिता के बच्चे ऊंचाई की संपत्ति प्राप्त नहीं कर सकते हैं: https://bugs.webkit.org/show_bug.cgi?id=26559
जाहिरा तौर पर फ़ायरफ़ॉक्स भी प्रभावित होता है (फिलहाल IE में परीक्षण नहीं कर सकता)
संभव समाधान:
- स्थिति जोड़ें: # संबंध के सापेक्ष
- स्थिति जोड़ें: # सम्मिलित-छाया-बाएँ पूर्ण
बग तब नहीं दिखता जब आंतरिक तत्व में पूर्ण स्थिति होती है।
Http://jsfiddle.net/xrebB/ देखें
10 अप्रैल 2014 को संपादित करें
चूंकि मैं वर्तमान में एक परियोजना पर काम कर रहा हूं जिसके लिए मुझे वास्तव में माता-पिता कंटेनरों की आवश्यकता है min-height, और बाल तत्वों को कंटेनर की ऊंचाई विरासत में मिली, मैंने कुछ और शोध किए।
पहला: मुझे अब यकीन नहीं है कि वर्तमान ब्राउज़र व्यवहार वास्तव में बग है या नहीं। CSS2.1 चश्मा कहते हैं:
प्रतिशत की गणना जनरेट किए गए बॉक्स वाले ब्लॉक की ऊंचाई के संबंध में की जाती है। यदि युक्त ब्लॉक की ऊंचाई स्पष्ट रूप से निर्दिष्ट नहीं है (यानी, यह सामग्री ऊंचाई पर निर्भर करता है), और यह तत्व बिल्कुल तैनात नहीं है, तो मान 'ऑटो' के लिए गणना करता है।
यदि मैं अपने कंटेनर पर एक मिनट की ऊँचाई डालता हूं, तो मैं स्पष्ट रूप से इसकी ऊंचाई निर्दिष्ट नहीं कर रहा हूं - इसलिए मेरे तत्व को autoऊंचाई मिलनी चाहिए । और ठीक यही वेबकिट - और अन्य सभी ब्राउज़र - करते हैं।
दूसरा, मुझे जो वर्कअराउंड मिला है:
अगर मैं इसके display:tableसाथ अपना कंटेनर तत्व सेट करता हूं तो height:inheritयह ठीक उसी तरह काम करता है जैसे कि मैं इसे min-height100% देता हूं । और - इससे भी महत्वपूर्ण बात यह है कि अगर मैंने बाल तत्व को display:table-cellइसमें सेट किया है , तो कंटेनर तत्व की ऊंचाई पूरी तरह से प्राप्त होगी - चाहे वह 100% या अधिक हो।
पूर्ण सीएसएस:
html, body {
height: 100%;
margin: 0;
}
#container {
background: green;
display: table;
height: inherit;
width: 100%;
}
#content {
background: red;
display: table-cell;
}
मार्कअप:
<div id="container">
<div id="content">
<p>content</p>
</div>
</div>
Http://jsfiddle.net/xrebB/54/ देखें ।
display:flexऔरflex-direction:columnऔर बच्चे देflex:1।