मैं एसवीजी सीख रहा हूं और this informative article पर आया हूं। लेखक बताते हैं किएसवीजी रेंडर करने योग्य तत्वों के साथ CSS3 स्यूडोक्लास की संगतता क्या है?
अधिकांश सीएसएस चयनकर्ताओं का उपयोग एसवीजी तत्वों का चयन करने के लिए किया जा सकता है। सामान्य प्रकार, कक्षा और आईडी चयनकर्ताओं के अलावा, एसवीजी को सीएसएस 2 के गतिशील छद्म-वर्गों (: होवर, सक्रिय और फोकस) और छद्म वर्ग (: पहला बच्चा,: दौरा किया गया: लिंक और: लैंग का उपयोग करके स्टाइल किया जा सकता है) शेष सीएसएस 2 छद्म वर्ग, जिसमें जेनरेट की गई सामग्री (जैसे :: पहले और :: के बाद) शामिल हैं, एसवीजी भाषा परिभाषा का हिस्सा नहीं हैं और इसलिए, एसवीजी की शैली पर कोई प्रभाव नहीं पड़ता है।
इस लेखक वेब पर कई लेख है और बहुत जानकार प्रतीत होता है। हालांकि, बयान "शेष सीएसएस 2 pseudoclasses .... SVGs की शैली पर कोई प्रभाव नहीं" CSS3 pseudoclasses के बारे में एक आश्चर्य बनाता है। लो यह उदाहरण मैंने कोडपेन (ब्राउज़र के रूप में एफएफ) पर उत्पन्न किया।
<svg width="220" height="220" xmlns="http://www.w3.org/2000/svg">
<rect x="10" y="10" width="100" height="100" />
<rect x="110" y="110" width="100" height="100" />
</svg>
<style>
svg { border: 3px dashed #999 }
svg > rect:hover { fill: green }
rect:nth-child(even) { fill:red }
</style>
CSS3 : nth-child छद्मक्लस यहां पूरी तरह से ठीक काम करता है (दूसरे आयताकार लाल भरता है)। एक और उदाहरण: ऊपर एक और CSS3 के pseudoclass चयनकर्ता के साथ एक वें वाले बच्चे नियम,: स्थानापन्न नहीं नियम (और सब एक ही रहता है):
rect:not([x="110"]) { fill:red } // fills the 1st rectangle red
मैं this reference पाया है लेकिन यह मेरी मदद नहीं करता है ।
एसवीजी तत्वों के साथ CSS3 छद्मक्लूस की संगतता क्या है?
नोट: मैं इन pseudoclass नियम संभालने हूँ केवल एसवीजी renderable elements पर लागू होगा।
': लक्ष्य' काम करता है: https://jsfiddle.net/7xvp3opq/2/ – Li357