मैं इस समस्या यहां प्रदर्शित करने के लिए एक jsfiddle सेट कर लेते हैं:
http://jsfiddle.net/x0eo3aeo/2/एक फ्लेक्स आइटम को अपनी सामग्री से छोटे से कम करने से कैसे रोकें?
HTML:
<div class="flexContainer">
<div class="flexCol1">aaa</div>
<div class="flexCol2"><div style="width:100px; background-color:yellow;">bbb</div></div>
<div class="flexCol3"><div style="width:250px; background-color:pink;">Hello world, some long text here to make this element stay at 250px while splitting onto multiple lines.</div></div>
</div>
सीएसएस:
.flexContainer {
display: flex;
width: 100%;
flex-direction: row;
}
.flexCol1, .flexCol3 {
flex: 1;
background-color: green;
}
फ़ायरफ़ॉक्स वास्तव में वास्तव में मैं कैसे चाहते व्यवहार करता है। कॉलम 1 और 3 फ्लेक्स समान रूप से कॉलम 3 की चौड़ाई अपने बच्चे div
के निश्चित आकार को हिट करती है, और उसके बाद केवल कॉलम 1 फ्लेक्स किया जाता है। हालांकि, क्रोम में, दोनों कॉलम समान रूप से फ्लेक्स करना जारी रखते हैं और कॉलम 3 की बाल सामग्री ओवरफ्लो होती है।
क्या क्रॉस-ब्राउज़र तरीके से फ़ायरफ़ॉक्स-शैली व्यवहार प्राप्त करने का कोई तरीका है?
अच्छे विचार, लेकिन उनमें से कोई भी मेरे लिए काम नहीं करता था। क्या आप अद्यतन जेएसफिडल्स को इंगित कर सकते हैं जहां आपके विचार लागू किए गए हैं? – Jez
दरअसल मैं झूठ बोलता हूं; 'न्यूनतम चौड़ाई: -webkit-min-content;' इसे क्रोम में ठीक किया गया, लेकिन आईई 11 में क्या हुआ? और, क्या आप कृपया 'फ्लेक्स: 1 0' विचार के काम के बारे में बता सकते हैं? – Jez
आह - क्षमा करें, आप सही हैं, "फ्लेक्स: 1 0" काम नहीं करता है। मैं गलती से सोच रहा था कि flexCol3 का फ्लेक्स-आधार "ऑटो" पर सेट था, और यह कि फ्लेक्स-आधार को शून्य करने से इसे कम करने से रोका जा सकता है - लेकिन नहीं, इसका फ्लेक्स-आधार "फ्लेक्स" शॉर्टेंड से 0 है। – dholbert