सबसे अधिक क्रॉस-संगत तरीका जो मैंने ऐसा करने के लिए पाया है वह बहुत स्पष्ट नहीं है। आपको दूसरे कॉलम से फ्लोट को हटाने की जरूरत है, और overflow:hidden
इसे लागू करें। हालाँकि यह किसी भी सामग्री को छिपाता हुआ प्रतीत होता है जो div के बाहर जाता है, यह वास्तव में div को उसके माता-पिता के भीतर रहने के लिए मजबूर करता है।
अपने कोड का उपयोग करना, यह एक उदाहरण है कि यह कैसे किया जा सकता है:
<div style="width: 100px; float: left;">menu</div>
<div style="overflow: hidden;">content</div>
आशा है कि यह इस समस्या वाले किसी भी व्यक्ति के लिए उपयोगी है, यह वही है जो मैंने पाया है कि मैं जिस साइट का निर्माण कर रहा था, उसके लिए सबसे अच्छा काम करता है, इसे अन्य प्रस्तावों के साथ समायोजित करने की कोशिश करता है। दुर्भाग्य से, यह काम नहीं करता है यदि आप div
सामग्री के बाद भी एक सही-फ़्लोटेड शामिल करते हैं , अगर किसी को यह जानने का एक अच्छा तरीका है कि काम करने के लिए, अच्छा IE संगतता के साथ, मुझे यह सुनकर बहुत खुशी होगी।
नया, बेहतर विकल्प display: flex;
अब जबकि फ्लेक्सबॉक्स मॉडल काफी व्यापक रूप से लागू हो गया है, मैं वास्तव में इसके बजाय इसका उपयोग करने की सलाह flex
दूंगा , क्योंकि यह लेआउट के साथ बहुत अधिक प्राथमिकता देता है । यहाँ मूल की तरह एक साधारण दो-कॉलम है:
<div style="display: flex;">
<div style="width: 100px;">menu</div>
<div style="flex: 1;">content</div>
</div>
और यहाँ एक लचीली-चौड़ाई वाले केंद्र स्तंभ के साथ तीन-स्तंभ है!
<div style="display: flex;">
<div style="width: 100px;">menu</div>
<div style="flex:1;">content</div>
<div style="width: 100px;">sidebar</div>
</div>