संक्षेप में, सीएसएस कैसे निर्धारित करता है कि एक शैली को दूसरे पर कब लागू किया जाए?सीएसएस विशिष्टता - "यह" कैसे तय करती है कि कौन सी शैलियों को लागू करना है?
पिछले वर्ष में, मैं बहुत सारी जावास्क्रिप्ट के साथ काम कर रहा हूं और jQuery में उपयोग किए गए सीएसएस आधारित चयनकर्ताओं ने मुझे यह जानने के लिए प्रेरित किया कि वे कैसे काम करते हैं। मैं W3 CSS3 selectors document के माध्यम से कुछ बार गया हूं, और इससे मुझे यह समझने में मदद मिली है कि jQuery में सीएसएस चयनकर्ताओं का बेहतर उपयोग कैसे किया जाए, लेकिन वास्तव में मुझे यह समझने में मदद नहीं मिली है कि एक सीएसएस नियम दूसरे पर लागू होगा।
मैं आपको एक उदाहरण दिखाऊंगा जो मुझे समझ में नहीं आता है।
मैं निम्न HTML है:
<div class='item'>
<a>Link 1</a>
<a class='special'>Link 2</a>
</div>
मैं है निम्नलिखित सीएसएस:
.item a {
text-decoration: none;
color: black;
font-weight: bold;
font-size: 1em; }
.special {
text-decoration: underline;
color: red;
font-weight: normal;
font-size: 2em; }
ऊपर देखते हुए दोनों लिंक 1 लिंक 2 और स्टाइल हो जाएगा एक ही है, द्वारा निर्धारित .item a
सीएसएस। .special
से जुड़ी शैली लिंक 2 के लिए प्राथमिकता क्यों नहीं लेती है?
जाहिर है, मैं इस तरह उसके चारों ओर प्राप्त कर सकते हैं:
.special {
text-decoration: underline !important;
color: red !important;
font-weight: normal !important;
font-size: 1em !important; }
लेकिन, मुझे लगता है कि एक हैक मैं समझ की मेरी कमी के कारण में छिड़क करना है की तरह। जब मैं !important
का उपयोग करता हूं, तो मुझे लगता है कि एक नशे की लत की एक छोटी सी मात्रा में एक व्यसन पदार्थ को फिसल रहा है, जो खुद को बता रहा है कि अच्छा छोड़ने से पहले "एक-आखिरी बार" को शामिल करना ठीक है।
इसके अतिरिक्त, अगर मैं वास्तव में सीएसएस सीखना चाहता हूं, तो सिफारिश करने के लिए कोई उत्कृष्ट पुस्तकें हैं?
यह लिंक बहुत अच्छी तरह से दिखता है, और बोनस के रूप में, तूफान सैनिकों और डार्थ वेदर की तस्वीरें हैं। [सीएसएस विशिष्टता] (http://coding.smashingmagazine.com/2007/07/27/css- विशिष्टता-things-you-should-know/) –
इस प्रश्न पूछने के लिए धन्यवाद। मैं वही नाव में हूं जैसा आप हैं। अंधेरे के लिए – srijan
@ जेम्स मॉन्टगेन +1। – Jonathan