2013-03-17 23 views
5

<pseudo> </pseudo>?छद्म तत्वों का तत्व प्रकार क्या है?

सीएसएस के छद्म तत्व डोम में नहीं हैं। लेकिन आंतरिक रूप से वे किसी प्रकार के सामान्य HTML तत्व के बराबर होना चाहिए, क्योंकि उन्हें स्टाइल किया जा सकता है, दिखाई दे सकता है, और वे पृष्ठ प्रवाह को प्रभावित करते हैं।

छद्म तत्व का तत्व प्रकार क्या है?

और क्या हम प्रोग्रामिंग रूप से उन्हें सीएसएस का उपयोग किए बिना बना सकते हैं?

उत्तर

5

छद्म तत्वों के पास कोई तत्व प्रकार नहीं है जहां तक ​​दस्तावेज़ भाषा का संबंध है क्योंकि, जैसा कि आप कहते हैं, वे डोम में मौजूद नहीं हैं, और जैसा कि "छद्म" उपसर्ग से अनुमानित किया जा सकता है, "वास्तविक" तत्व नहीं हैं। सीएसएस बस उन्हें छद्म-तत्व कहते हैं, हालांकि तत्वों की वास्तविक सामग्री से पहले और बाद में सामग्री उत्पन्न करने के लिए आपके पास अलग-अलग उद्देश्यों या तत्व संरचनाओं के विभिन्न हिस्सों जैसे स्व-स्पष्टीकरण ::first-letter और ::first-line, और ::before और ::after के लिए अलग-अलग छद्म-तत्व हैं।

छद्म-तत्व पृष्ठ प्रवाह को प्रभावित करते हैं, डीओएम के साथ कुछ लेना देना नहीं है। ब्राउज़र ब्राउज़र पर प्रस्तुत किए जा सकने वाले ऑब्जेक्ट्स में डीओएम तत्वों को प्रारूपित करने और प्रारूपित करने के लिए सीएसएस का उपयोग करता है, और ऐसा करने की प्रक्रिया में वास्तविक तत्वों के लिए बने बक्से के वंशज के रूप में छद्म-तत्व बनाता है। यद्यपि आप आमतौर पर एक तत्व के लिए छद्म तत्व संलग्न करते हैं, आप किसी भी तरह से डोम को नहीं बदल रहे हैं; इसके बजाए, आप बस इस बात को बदल रहे हैं कि ब्राउजर पेज को कैसे दिखाता है।

क्योंकि छद्म तत्व एक सीएसएस के लिए अद्वितीय अवधारणा हैं (Selectors module में परिभाषित), आप उन्हें सीएसएस के अलावा किसी अन्य चीज़ का उपयोग नहीं कर सकते हैं। एक सीएसएस अवधारणा के रूप में छद्म तत्वों के कार्यान्वयन को CSSOM में परिभाषित किया गया है, जो कि डीओएम के सीएसएस समकक्ष है (और जहां window.getComputedStyle() जैसी विधियां परिभाषित की गई हैं)। हालांकि मैं सीएसएसओएम से बहुत परिचित नहीं हूं, इसलिए मैं आगे टिप्पणी नहीं कर सकता कि उन्हें सीएसएस के संदर्भ में असली तत्वों के समान ही लागू किया गया है।

+0

यह एक अच्छा जवाब है, और यह समझ में आता है, लेकिन क्या आपके पास प्रमाण है। कुछ छोटे-ज्ञात ब्राउज़र एपीआई हो सकते हैं ... document._webkit_createPseudoElementBox (...) –

+0

यह spec लिंक में है - यदि विधियां हैं तो वे सीएसएसओएम विधियों की संभावना है और डीओएम विधियों की संभावना नहीं है। – BoltClock

+0

यह अच्छा है। मैंने सीखा कि आज एक सीएसएसओएम है। –

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