2012-10-23 23 views
7

द्वारा लेबल का चयन करें इनपुट इनपुट के समान इनपुट इनपुट प्रकार से लेबल को बाहर करने या चुनने का कोई तरीका है?इनपुट प्रकार

label:not([type=checkbox]) 
label[type=checkbox] 
+0

आपका प्रश्न वास्तव में क्या है? क्या आप जानना चाहते हैं कि अन्य इनपुट प्रकार क्या हैं ... स्पष्ट रूप से समझ नहीं सका .. rephrase ... – Vinay

+0

दूसरा एक निश्चित रूप से काम करता है। '[विशेषता = मान]' सीएसएस चयनकर्ता कुछ भी नहीं, केवल एक इनपुट के लिए काम करता है। (यदि आप अक्षम हैं, तो आप क्लास नाम प्राप्त कर सकते हैं आदि) यह आईई के कुछ पुराने संस्करणों में काम नहीं कर सकता है। मैंने यह नहीं देखा है: इससे पहले चयनकर्ता नहीं, इसलिए मैं इस पर टिप्पणी नहीं कर सकता। – Andrew

+0

@ विनी सवाल है, सीएसएस में इनपुट फील्ड टाइप = चेकबॉक्स के लिए लेबल का चयन या बहिष्करण कैसे करें? – InTry

उत्तर

13

आप अपने चेक बॉक्स विशिष्ट पहचान-पत्र देते हैं कि सब एक ही बात के साथ शुरू, तो आप निम्न कर सकता है:

एचटीएमएल

<input type="checkbox" id="chkTerms" /> 
<label for="chkTerms">Read terms & conditions</label> 

सीएसएस

label[for*="chk"], label[htmlfor*="chk"] 
{ 
css here 
} 

शायद आधुनिक ब्राउज़र केवल हालांकि। संपादित करें: मैंने अभी एक पहेली की कोशिश की है: link और यह क्रोम और आईई 8 & 9 में काम करता है लेकिन 7 नहीं। मैंने इसे एफएफ में नहीं देखा।

EDIT2: यहां क्या हो रहा है इसके स्पष्टीकरण देने के लिए, स्क्वायर ब्रैकेट्स एक विशेषता के लिए दिखता है। क्षुद्रग्रह बराबर के व्यवहार को बराबर बराबर से बदलता है, इसका मतलब है - जहां भी विशेषता के लिए "chk" होता है, वह उस शैली को लागू करेगा। आप * को^के साथ प्रतिस्थापित कर सकते हैं और यह इसे इसके बजाय शुरू होने के साथ बदल देगा।

EDIT3: बोल्टक्लॉक ने एक टिप्पणी में आई 7 के लिए एक फिक्स प्रदान किया है, मैंने इसे शामिल करने के लिए उत्तर अपडेट किया है।

+0

के साथ इसे ओवरराइट करें यह वही है जो मुझे – InTry

+1

वाई के लिए देखा गया था eah, IE7 विशेषता चयनकर्ताओं के साथ परेशानी है, और 'for' एक प्रसिद्ध उदाहरण है जहां आपको इसके बजाय' htmlFor' का उपयोग करने की आवश्यकता है। – BoltClock

+0

@ बोल्टक्लॉक मैं htmlfor चयनकर्ता से अनजान था। धन्यवाद :-) मैं आईई 7 को ठीक करने के लिए अपनी पोस्ट अपडेट करूँगा। – Andrew

3

कैसे input[type=checkbox] + label { /*label style here*/ }? इनपुट तत्व के ठीक बाद टेक्स्ट यह काम कर सकता है। मैंने इसका परीक्षण नहीं किया है।

+0

वास्तव में, यह केवल तभी काम करता है जब लेबल इनपुट तत्व के बाद होता है :( – InTry

+0

क्या आप HTML को संशोधित कर सकते हैं? उदाहरण के लिए आप उन लेबलों के लिए कक्षा जोड़ सकते हैं या सभी लेबलों को गले में जाने के लिए jQuery का उपयोग कर सकते हैं और जांचें कि उनके पास किस प्रकार का इनपुट है। – Antti

+0

इसकी सीमाओं के बावजूद यह एक अच्छा विचार है। –

1

आप बुनियादी डेटा-विशेषता संदर्भ के साथ अपने चेकबॉक्स का उपयोग कर सकते ..

<input type="checkbox" name="checkbox-1" id="checkbox-0" class="custom" /> 
<label for="checkbox-0">Whatever</label> 

आप इस उम्मीद नहीं है ... हमें बताएँ ...

+0

मुझे पता है कि मैं आईडी या कक्षा का उपयोग कर सकता हूं, मैंने पूछा कि क्या इसे अन्य तरीके से करना संभव होगा 'लेबल {शैली} 'का उपयोग करके' # चेकबॉक्स -0 {शैली} ' – InTry

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