2015-05-17 12 views
6

साथ तत्व से केवल प्रत्यक्ष बच्चों का चयन करें कहते हैं कि मैं निम्न HTML है की सुविधा देता हैसास

header { 
    height: 4.1rem; 

    div { 
     width: 33%; 
     float: left; 
     height: 4.1rem; 
     line-height: 4.1rem; 
     color: #fff; 

     &.title { 
      h1 { 
       font-weight: normal; 
       font-size: 3rem; 
       padding: 0; 
       margin: 0; 
      } 
     } 

     &.logo { 
      text-align: center; 
     } 

     &.account { 
     } 
    } 
} 

अब समस्या मेरे पास है कि divs options है और searchaccount का 33% प्रतिशत है जो तर्क है क्योंकि मेरे पास div {width: 33%} है। मैं जानता हूँ कि मैं के साथ सीधे बच्चे तत्वों का चयन कर सकते हैं:

header { 
    > div { 
    } 
} 

लेकिन यह मदद नहीं करता है, भले ही मैं अन्य सभी वर्गों के > सामने डाल दिया। मुझे यह भी पता है कि मैं कह सकता हूं कि चौड़ाई 0 या .account में फिर से होनी चाहिए, लेकिन मैं इसे रोकना चाहता हूं।

+1

सास के साथ इसका क्या संबंध है? यदि आपके पास शुद्ध सीएसएस समस्या है, तो केवल संकलित सीएसएस पोस्ट करें। – cimmanon

+0

@ जोसेफइंजफ्लोस्ट जो '। विकल्प' और '। खोज '100% चौड़ाई बनाता है। मैं इसे 0 चौड़ाई – SuperDJ

+0

प्राप्त करने की उम्मीद कर रहा था क्षमा करें, मैंने जल्द ही –

उत्तर

14

इस प्रयास करें:

... 
    & > div {width: 33%;} 

    div { 
     float: left; 
     height: 4.1rem; 
     line-height: 4.1rem; 
     color: #fff; 
     ... 

div चौड़ाई बाहर ले लो और केवल प्रत्यक्ष बच्चों पर यह लागू होते हैं। बाकी के रूप में छोड़ दें। यहां त्वरित fiddle है (बाद में .option और .search शैलियों को हटाएं, केवल विज़ुअलाइज़ेशन के लिए)।

कृपया अपना प्रश्न संपादित करें और बेहतर बताएं कि आप वास्तव में क्या हासिल करना चाहते हैं।

+0

टाई जो इसे मेरे लिए तय करता है और अभी भी साफ दिख रहा है – SuperDJ

2

मुझे यकीन नहीं है कि मैं आपको समझता हूं। लेकिन मुझे लगता है आप सीधे बच्चों और बच्चे छद्म चयनकर्ताओं का एक संयोजन, शुद्ध सीएसएस में हैं:

header > div:first-child { 
} 

या, दूसरे div के लिए:

header > div:nth-child(2) { 
} 

तुम भी not का भी उपयोग कर सकता है:

header > div:not(.account) { 
} 

किसी भी अवांछित div को बाहर करने के लिए।

+0

से बात की थी ये वास्तव में मेरे लिए काम नहीं कर रहे हैं। विकल्प 1 केवल '.title' के लिए काम करेगा। विकल्प 2 यह दूसरे div के लिए लागू नहीं होता है। विकल्प 3 यह div – SuperDJ

+0

के तहत कुछ शैली लागू नहीं करेगा क्या आपने 'हेडर> div {} 'की कोशिश की है? – ryanpcmcquen

+0

हाँ, मेरे पास है। लेकिन – SuperDJ