2010-02-21 21 views
6

मैं उलझन में हूँ।स्थानीय HTML फ़ाइलों पर एसवीजी क्यों काम नहीं करता है?

अगर मैं इस वेब साइट के लिए (Chrome या Safari पर OSX) ब्राउज़र द्वारा इंगित करते हैं, यह पता चलता है सब पूरी तरह से एसवीजी:

http://emacsformacosx.com/

अब, अगर मैं उस पृष्ठ पर स्रोत देखें, इसे कॉपी, और इसे अपने डेस्कटॉप पर एक नए HTML दस्तावेज़ में पेस्ट करें, फिर इसे ब्राउज़र के साथ देखें, मुझे कोई एसवीजी नहीं मिला है।

अंतर क्यों?

एसवीजी वेबसाइट पर क्यों काम करता है, लेकिन स्थानीय HTML फ़ाइल में नहीं?

धन्यवाद!

उत्तर

8

आप HTML करने के लिए रखा, और ब्राउज़र मान लिया गया html सामग्री .. जबकि पेज text/xml है ..

अगर आप इसे .xml को नाम बदलने और इसे खोलने, आप इसे ठीक देखेंगे ..

+0

पुष्टि की। मैक ओएस एक्स 10.6.2 – pestilence669

+0

पर इस विधि का उपयोग करके पुन: उत्पादित और निश्चित। क्या सभी HTML5 दस्तावेज़ों में .xml एक्सटेंशन होना चाहिए, या क्या यह दस्तावेज़ में एसवीजी रखने का एक कार्य है? – Axeva

+0

मैंने अभी थोड़ा सा खिलौना लगाया है और ऐसा लगता है कि एफएफ और क्रोम दोनों ही '.xhtml' एक्सटेंशन के साथ सही प्रस्तुत करते हैं ... यह स्पष्ट गलत लगता है कि वे फ़ाइल के अंदर से सामग्री की परिभाषा स्वीकार नहीं करेंगे (उदाहरण के लिए मेटा टैग ..), लेकिन ऐसा लगता है .. –

4

HTTP प्रतिक्रिया हेडर सूचना ब्राउज़र का कारण बनता है XML के रूप में जानकारी की व्याख्या करने के:

HTTP/1.1 200 OK 
Date: Sun, 21 Feb 2010 02:32:02 GMT 
Server: Apache/2.2.14 (Debian) 
Vary: Accept-Encoding 
Transfer-Encoding: chunked 
Content-Type: text/xml; charset=UTF-8 

तुम देखो, सर्वर है कि पेज परोसा बहुत चालाक पता लगाने के लिए कि यह एक XML दस्तावेज था, और ब्राउज़र को बताया। जब आप डिस्क से फ़ाइल लोड करते हैं, तो आपका ब्राउज़र ऐसा करने के लिए पर्याप्त स्मार्ट नहीं हो सकता है, और इस जानकारी की आपूर्ति के लिए फ़ाइल के विस्तार पर भरोसा करता है।

आप डालने की कोशिश कर सकते <head> तत्व में निम्नलिखित:

<meta http-equiv="Content-Type" content="text/xml; charset=UTF-8" /> 

तुम देखो क्या मैं वहाँ था? यह केवल HTTP प्रतिक्रिया शीर्षलेख का दर्पण है जो दस्तावेज़ प्रकार और एन्कोडिंग निर्दिष्ट करता।

इस टैग का उद्देश्य ब्राउज़र को सोचना है, "अरे, सर्वर मुझे बता रहा है कि यह दस्तावेज़ HTML है, लेकिन दस्तावेज़ मुझे यह एक्सएमएल बता रहा है। दस्तावेज़ शायद सर्वर से बेहतर जानता है, इसलिए मैं ' इस पर भरोसा करेंगे ... :: एक्सएमएल के रूप में व्याख्या करता है :: "

+2

जो मामला होना चाहिए लेकिन दुर्भाग्य से यह नहीं है .. यह अभी भी इसे सही ढंग से प्रस्तुत नहीं करेगा .. –

+0

दुर्भाग्यवश, गैबी सही है। यह काम नहीं करता है। आप एम्पेटामाचिन के एक सुरुचिपूर्ण समाधान के साथ आए हैं, लेकिन ब्राउज़र इसे अनदेखा कर रहा है। निराशाजनक। – Axeva

+0

ब्राउज़र्स = बेवकूफ – amphetamachine

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