2011-11-28 16 views
30

क्या अंतिम बच्चा चुनना संभव है जिसमें कक्षा एआरआर नहीं है? इस तरह की तरह:संयोजन: अंतिम-बच्चे के साथ: सीएसएस में नहीं (.class) चयनकर्ता

<tr> ... </tr> 
<tr> ... </tr> 
<tr> ... </tr> 
<tr class="table_vert_controls"> ... </tr> 

मैं तीसरी पंक्ति का चयन करना चाहते, इस मामले में।

tr:not(.table_vert_controls):last-child 

धन्यवाद अग्रिम में:

मैं निम्नलिखित है, जो काम नहीं किया की कोशिश की।

+3

मुझे लगता है कि यह वही है जो आप उम्मीद कर रहे हैं। ** बोल्टक्लॉक ** उत्तर ** का संदर्भ लें [CSS3: चयनकर्ता के साथ nth-child (विषम)] (http://stackoverflow.com/a/5546296/500725) ** –

+0

संकेत शिव के लिए धन्यवाद! यह वही नहीं था जो मुझे चाहिए था, लेकिन मैं एनएच-आखिरी बच्चे का उपयोग कर समाप्त हुआ। चूंकि कक्षा के साथ पंक्ति हमेशा आती है, इसलिए मैंने आवश्यक पंक्ति का चयन करने के लिए एनएच-आखिरी बच्चे का उपयोग किया। – dcastro

+0

@ डैड्रो: जैसा कि 'tr: nth-last-child (2)' में है? यह भी काम करता है :) – BoltClock

उत्तर

25
अकेले CSS चयनकर्ताओं, कोई साथ

नहीं, के रूप में विशेष रूप से :last-child अंतिम संतानपर लग रहा है, और वहाँ एक समान :last-of-class छद्म वर्ग नहीं है। this related question पर मेरा उत्तर देखें।

2015 के अंत के रूप में, कार्यान्वयन धीरे धीरे में चयनकर्ता के लिए 4 के विस्तार :nth-child() और :nth-last-child() जो आप एक तर्क (लिंक किए गए जवाब के लिए एक अद्यतन में वह भी पर और अधिक) के रूप में एक मनमाना चयनकर्ता पारित करने के लिए अनुमति देने के लिए मिलने वाले शुरू कर दिया है। इसके बाद आप निम्न लिखने में सक्षम हो जाएगा:

tr:nth-last-child(1 of :not(.table_vert_controls)) 

कार्यान्वयन हाल ही में जहाज के लिए शुरू कर दिया है हालांकि, यह अभी भी कम से कम एक और अधिक कुछ महीनों का समय लगेगा अगर इस के लिए एक और साल नहीं व्यापक रूप से समर्थित किया जाना है। इस बीच, आपको प्रश्न में कक्षा से ठीक पहले, या एक jQuery चयनकर्ता:

$('tr:not(.table_vert_controls):last') 
+0

': आखिरी प्रकार की आवाज पर्याप्त करीब है, क्या यह काम नहीं करेगा? – Tomalak

+5

@Tomalak: नहीं, जैसा कि 'अंतिम प्रकार के' में एक कार्यात्मक नोटेशन नहीं है, और केवल तत्व प्रकार (इस मामले में, 'tr') को देखता है। – BoltClock

+0

धन्यवाद। मैंने इसे पहले ही हटा दिया है। (आप jQuery कोड मेरे उत्तर का पहला संस्करण था, जब तक कि मैंने देखा कि यह पहली जगह में jQuery के बारे में नहीं है ...) – Tomalak

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