2016-10-03 12 views
13

क्या एक फ्लेक्स तत्व एक बच्चे तत्व को अनदेखा करना संभव है, तो इसका आकार अन्य तत्वों को प्रभावित नहीं करता है?फ्लेक्स तत्व बच्चे तत्व को अनदेखा करें

उदाहरण के लिए, मेरे पास display: flex के साथ एक रैपर है। इसमें एक हेडर, सामग्री और पाद लेख है।

<div class="wrapper"> 
    <header></header> 
    <article></article> 
    <footer></footer> 
</div> 

मैं चाहता हूं कि रैपर हेडर टैग को अनदेखा कर दे (हेडर विंडो के शीर्ष पर तय किया जाएगा)। लेख flex: 1 पर सेट किया जाएगा, इसलिए यह पृष्ठ के निचले हिस्से में पाद लेख को मजबूर करने के लिए शेष स्थान लेता है। यहां कुछ ऐसे नमूना सीएसएस है:

.wrapper { 
    display: flex; 
    flex-direction: column; 
    height: 100%; 
    padding-top: 50px; /* Accounts for header */ 
} 

header { 
    height: 50px; 
    position: fixed; 
    top: 0; 
    width: 100%; 
} 

article { 
    flex: 1; 
} 

footer { 
    height: 50px; 
} 

मैं जानता हूँ कि मैं सिर्फ आवरण के बाहर हैडर के लिए कदम सकता है, लेकिन मुझे लगता है कि है कि थोड़ा अधिक मुश्किल कर देगा मौजूदा कोड का एक बहुत कुछ है। क्या मैं भी संभव पूछ रहा हूं?

+0

क्या आप एक पूर्ण कामकाजी नमूना पोस्ट कर सकते हैं? (एक स्निपेट) – Amit

+2

http://stackoverflow.com/q/39069320/3597276 –

+0

क्या आप फ़ायरफ़ॉक्स के साथ काम कर रहे हैं? –

उत्तर

2

जब आप घोषित करते हैं। display:flex के रूप में। आप स्वचालित रूप से अपने सभी प्रत्यक्ष बाल तत्वों को display:flex-item घोषित करते हैं। आप header { display: block; }

+5

मैं वर्तमान में इस में हूं एक ही स्थिति और समाधान काम नहीं किया। फ्लेक्स बाल तत्वों में से एक पर 'डिस्प्ले: ब्लॉक' सेट करने के बाद, यह अभी भी एक फ्लेक्स-आइटम तत्व के रूप में व्यवहार कर रहा है। कोई सुराग? –

+0

यह एक फ्लेक्स-आइटम की तरह काम कर रहा है? क्या आप को देखने के लिए कोडपेन प्रदान कर सकते हैं? –

+0

मुझे वही आश्चर्य है, जिस तरह से एक सीधा बच्चा फ्लेक्स-आइटम के रूप में कार्य करता है जैसा आप बताते हैं? 'फ्लेक्स-आइटम' क्या है? केवल फ्लेक्स से संबंधित डिस्प्ले प्रकार जिन्हें मैं जानता हूं वे 'फ्लेक्स' और' इनलाइन-फ्लेक्स 'हैं। मेरा मतलब यह है कि जब मैं कहता हूं कि बच्चा अभी भी एक फ्लेक्स-आइटम के रूप में व्यवहार कर रहा है (उसी शब्द का उपयोग करने की कोशिश कर रहा है) यह है कि यह अभी भी फ्लेक्स आकार और अन्य भाई बहनों के साथ पोजिशनिंग में भाग ले रहा है और अनदेखा नहीं किया जा रहा है। –

13

flex-wrap: wrap घोषित करने के साथ अंतर्निहित घोषणा को ओवरराइड कर सकते हैं। फिर अपने शीर्षलेख के लिए, आप शैली flex-basis: 100% जोड़ सकते हैं जो शीर्षलेख के नीचे सबकुछ नीचे मजबूर करेगी।

+2

यह पूरी तरह स्वीकार्य उत्तर होना चाहिए। –

0

आप बच्चे के तत्वों पर flex-shrink: 0 का उपयोग कर सकते हैं ताकि उन्हें कंटेनर भरने के लिए सिकुड़ने से बचाया जा सके। और कंटेनर/रैपर पर flex-wrap: wrap का उपयोग करें ताकि आपके बच्चे लपेट जाएंगे।

संबंधित मुद्दे