"How to add style to XML" का अनुवाद
मूल संस्करण: http://www.w3.org/Style/styling-XML
अनूदित संस्करण: यह संस्करण
अनुवादक: भावात्मज सेठ w3 hindi Dirje Welry
यह W3c पृष्ठ का अनुवाद है और इस मे कुछ त्रुटियाँ हो सकती हैं. W3C वेबसाइट पर अंग्रेजी मूल दस्तावेज ही आधिकारिक है।
(यह पृष्ठ सीएसएस शैली पत्रक का उपयोग करता है)
शैली
इस्तेमाल करना चाहिए?
विदेशी
सीएसएस
एम्बेडेड
XSL
CSS2 सिफारिश XML के साथ सीएसएस के प्रयोग पर एक संक्षिप्त ट्यूटोरियल शामिल CSS2 पर XML (§ 2.2 )में शैली के लिए सरकारी लिखा विनिर्देशन के लिए तैयार नहीं था. यहाँ वही है जो कि ट्यूटोरियल निहित होनी चाहिए. ध्यान दें कि उदाहरण सीएसएस, ख का उपयोग करें अधिकांश मामलों शैली के नियम भी XSL में लिखा जा सकता है
Tip: try it in your browser
HTML लिंक के तत्व को बाह्य शैली पत्रक से लिंक है, लेकिन नहीं प्रारूप पर आधारित प्रत्येक XML जैसे एक तत्व होगा. अगर कोई उपयुक्त तत्व है,तुम अब भी XML-stylesh के माध्यम से बाह्य शैली पत्रक संलग्न कर सकते हैं इस तरह प्रसंस्करण अनुदेश:
<?xml-stylesheet href="my-style.css" type="text/css"?> ... rest of document here...
इस प्रसंस्करण अनुदेश (PI) दस्तावेज़ के पहले टैग के सामने आना चाहिए.सीएसएस पाठ की आवश्यकता नहीं है......, लेकिन यह ब्राउज़र में मदद करता है: अगर यह सीएसएस का समर्थन नहीं करता, उसे पता है वह यह फ़ाइल डाउनलोड नहीं होगा .
बस HTML के लिंक के साथ तत्व के रूप में,वहाँ एकाधिक XML-stylesheet PIs और वे गुण के प्रकार, मध्यम और शीर्षक सेट हो सकता है हो सकता है.
यहाँ एक बड़ा उदाहरण है. चलो मान हम तीन शैली पत्रक है, एक कि प्रत्येक तत्व का मूल प्रदर्शन प्रकार सेट इनलाइन,ब्लॉक आइटम, सूची, आदि.) और दो अलग अलग हैं कि प्रत्येक सेट रंग और मार्जिन. पिछले दो लोगों को एक दूसरे विकल्प हैं, और दस्तावेज़ का पाठक जो एक को चुन सकते हैं उपयोग करें. को छोड़कर जब दस्तावेज़, मुद्रित जिस स्थिति में हम सिर्फ पिछले शैली का उपयोग करना चाहते है. यहाँ आम शैली पत्रक है:
/* common.css */ INSTRUMENT { display: inline } ARTICLE, HEADLINE, AUTHOR, PARA { display: block }
इस विकल्प के शैलियों में से एक है, एक फाइल में बुलाया "modern.css ":
/* modern.css */ ARTICLE { font-family: sans-serif; background: white; color: black } AUTHOR { margin: 1em; color: red } HEADLINE { text-align: right; margin-bottom: 2em } PARA { line-height: 1.5; margin-left: 15% } INSTRUMENT { color: blue }
और यहाँ दूसरे से एक है, नाम "classic.css":
/* classic.css */ ARTICLE { font-family: serif; background: white; color: #003 } AUTHOR { font-size: large; margin: 1em 0 } HEADLINE { font-size: x-large; margin-bottom: 1em } PARA { text-indent: 1em; text-align: justify } INSTRUMENT { font-style: italic }
इन तीन शैली से जुड़ी यह चादर के साथ XML दस्तावेज़ इस तरह दिखता है:
<?xml-stylesheet href="common.css" type="text/css"?> <?xml-stylesheet href="modern.css" title="Modern" media="screen" type="text/css"?> <?xml-stylesheet href="classic.css" alternate="yes" title="Classic" media="screen, print" type="text/css"?> <ARTICLE> <HEADLINE>Fredrick the Great meets Bach</HEADLINE> <AUTHOR>Johann Nikolaus Forkel</AUTHOR> <PARA> One evening, just as he was getting his <INSTRUMENT>flute</INSTRUMENT> ready and his musicians were assembled, an officer brought him a list of the strangers who had arrived. </PARA> </ARTICLE>
अधिक जानकारी के लिए, W3C सिफारिश "XML दस्तावेज़ों के साथ स्टाइल शीट्स जोड़" के देखें
Tip: try it in your browser
HTML तत्व एक शैली है शैली पत्रक (एस HTML फाइल में) सीधे एम्बेडेड की अनुमति देता है, एक बाहरी फ़ाइल के लिए ही आवश्यकता के बिना. कुछ मामलों में यह आसान है, खासकर जब शैली पत्रक बहुत उस दस्तावेज़ के लिए विशिष्ट है .
IMost XML-आधारित स्वरूप एक तत्व नहीं है, लेकिन एक ही होगा PI कि बाह्य शैली पत्रक के लिंक भी शैली पत्रक है कि दस्तावेज़ में ही अंतर्निहित हैं बिंदु किया जा सकता है. फरवरी 2006 के रूप में, वहाँ अब भी कर रहे हैं और यह कोई औपचारिक विनिर्देशन के साथ मौजूद तकनीकी समस्याओं. के लिए
<?xml-stylesheet href="#style" type="text/css"?> <ARTICLE> <EXTRAS id="style"> INSTRUMENT { display: inline } ARTICLE, HEADLINE, AUTHOR, PARA { display: block } EXTRAS { display: none } </EXTRAS> <HEADLINE>Fredrick the Great meets Bach</HEADLINE> ... </ARTICLE>
इस मामले में सीएसएस" उपस्थित होना चाहिए विशेषता, अन्यथा ब्राउज़र(या अन्य प्रोग्राम) के लिए शैली पत्रक भाषा लगता है . XML-stylesheet PI अब एक बाह्य शैली पत्रक को अंक नहीं, लेकिन खुद को दस्तावेज़ एक तत्व के लिए. यह तत्व एक आईडी गुण है कि लिंक के लक्ष्य के रूप में कार्य करता द्वारा पहचान की है. (विशेष रूप से XML स्वरूप पर निर्भर करता है, आईडी गुण नाम कुछ और हो सकता है ; कुछ प्रारूप में एक बिल्कुल उपयुक्त गुण नहीं हो सकता.)
W3C सिफारिश "XML दस्तावेज़ों के साथ 'स्टाइल शीट्स" जोड़ है एम्बेडेड शैली पत्रक के मामले को परिभाषित नहीं, हालांकि यह एक उचित एक्सट्रपलेशन लगता है यूआरएल टुकड़े की अनुमति ). हालांकि यह एक उचित एक्सट्रपलेशन लगता है यूआरएल टुकड़े की अनुमति (शुरू करने के साथ एक "#", वहाँ अभी भी अनसुलझी समस्याओं और कोई प्रकाशित विनिर्देशन है ". समस्याएं इस प्रकार हैं
<ARTICLE>
के साथ शुरू होता है सीएसएस सही नहीं , तो ऐसा लगता है कि वहाँ के लिए एक अतिरिक्त नियम है कि एक टुकड़ा पहचानकर्ता एक .शैली पत्रक PI अंक में एक तत्व की सामग्री के लिए करते थे, तत्व ही नहीं की जरूरत हैHTML भी शैली के लिए व्यक्तिगत तत्व सीधे शैली की विशेषता के माध्यम से जुड़ा होना अनुमति देता है. सबसे Class attributesXML-आधारित दस्तावेज़ स्वरूप एक ऐसी विशेषता नहीं है, यद्यपि कुछ सुविधाओं को मॉड्यूल (अनुमती दे सकते हैं HTML से) करेंगे दस्तावेज़ के अंदर इस्तेमाल किया जाएगा.
Tip: try it in your browser
वर्ग विशेषता है कि आप HTML में तत्वों की subclasses बनाने के लिए अनुमति देता है भी होने की संभावना नहीं के लिए XML के अधिकांश में उपलब्ध हो दस्तावेज प्रारूपों आधारित है. बेशक, सीएसएस की मदद से आप .किसी भी विशेषता पर आधारित तत्वों में ही नहीं, वर्ग चुनें, लेकिन वाक्यविन्यास कम सुविधाजनक है
यहाँ एक उदाहरण है. यदि वहाँ एक वर्ग के गुण और दस्तावेज़ स्वरूप को परिभाषित करता है कि यह HTML में की तरह काम करती है, हम डॉट के साथ संकेतन का उपयोग कर सकते हैं. (इसलिए, इस विशिष्ट उदाहरण के काम नहीं होगा क्योंकि <doc> एक प्रारूप कि ब्राउज़रों कि कुछ वर्ग के रूप में जानते हैं) नहीं है
<?xml-stylesheet href="#s1" type="text/css"?> <doc> <s id="s1"> s { display: none } p { display: block } p.note { color: red } </s> <p>Some text... </p> <p class="note">A note... </p> </doc>
यदि दस्तावेज़ स्वरूप निर्दिष्ट है कि वर्ग एक subclass पैदा नहीं करता, तो आप "[]"के साथ अब चयनकर्ताओं का उपयोग करेंगे है:
<?xml-stylesheet href="#s1" type="text/css"?> <doc> <s id="s1"> s { display: none } p { display: block } p[class~=note] { color: red } </s> <p>Some text... </p> <p class="note">A note... </p> </doc>
अगर कोई वर्ग विशेषता नहीं है, लेकिन वहाँ तो हम उपयोग करते हैं, विशेषता चयनकर्ताओं "[]" अभी भी लागू कर सकते हैं
try it in your browser
<?xml-stylesheet href="#s1" type="text/css"?> <doc> <s id="s1"> s { display: none } p { display: block } p[warning="yes"] { color: red } </s> <p>Some text... </p> <p warning="yes">A note... </p> </doc>