मुझे लगता है कि आप जटिल चीजों को खत्म करने की कोशिश कर रहे हैं। एक सरल उपाय यह है कि आप अनचाहे स्टाइल के साथ डिफ़ॉल्ट रूप से अपने चेकबॉक्स को स्टाइल करें और फिर चेक किए गए स्टेट स्टाइल को जोड़ें।
input[type="checkbox"] {
// Unchecked Styles
}
input[type="checkbox"]:checked {
// Checked Styles
}
मैं एक पुराने सूत्र को लाने के लिए माफी माँगता हूँ, लेकिन लगा कि यह एक बेहतर उत्तर का उपयोग कर सकता है।
EDIT (3/3/2016):
W3C चश्मा बताता है कि :not(:checked)
अनियंत्रित अवस्था को चुनने के लिए उनका उदाहरण है। हालांकि, यह स्पष्ट रूप से अनियंत्रित स्थिति है और केवल उन शैलियों को अनियंत्रित स्थिति में लागू करेगा। यह स्टाइल जोड़ने के लिए उपयोगी है जो केवल अनियंत्रित स्थिति पर आवश्यक है और input[type="checkbox"]
चयनकर्ता पर उपयोग किए जाने पर चेक किए गए राज्य से हटाए जाने की आवश्यकता होगी । स्पष्टीकरण के लिए नीचे उदाहरण देखें।
input[type="checkbox"] {
/* Base Styles aka unchecked */
font-weight: 300; // Will be overwritten by :checked
font-size: 16px; // Base styling
}
input[type="checkbox"]:not(:checked) {
/* Explicit Unchecked Styles */
border: 1px solid #FF0000; // Only apply border to unchecked state
}
input[type="checkbox"]:checked {
/* Checked Styles */
font-weight: 900; // Use a bold font when checked
}
चयनकर्ता के :not(:checked)
ऊपर के उदाहरण का उपयोग किए बिना उसी प्रभाव को प्राप्त :checked
करने के लिए उपयोग करने की आवश्यकता होगी border: none;
।
input[type="checkbox"]
डुप्लिकेट को कम करने के लिए बेस स्टाइलिंग के लिए उपयोग करें ।
input[type="checkbox"]:not(:checked)
स्पष्ट अनियंत्रित शैलियों के लिए उपयोग करें जिन्हें आप चेक किए गए राज्य पर लागू नहीं करना चाहते हैं।