Why doesn't SVG work on local HTML files?

前端 未结 2 355
名媛妹妹
名媛妹妹 2021-01-12 20:43

I\'m confused.

If I point by browser (Chrome or Safari on OSX) to this web site, it shows all the SVG perfectly:

http://emacsformacosx.com/

Now, if I

相关标签:
2条回答
  • 2021-01-12 20:56

    The HTTP response header information causes the browser to interpret the information as 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
    

    You see, the server that served up the page was smart enough to detect that this was an XML document, and told the browser. When you load the file from disk, your browser may not be smart enough to do this, and tend to rely on the file's extension to supply this information.

    You could try inserting the following into the <head> element:

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

    You see what I did there? It's just a mirror of the HTTP response header that would have specified the document type and encoding.

    The purpose of this tag is to make browsers think, "Hey, the server is telling me that this document is HTML, but the document is telling me it's XML. The document probably knows better than the server, so I'll trust it... ::interprets as XML::"

    0 讨论(0)
  • 2021-01-12 21:10

    You renamed it to HTML, and the browser assumes html content.. while the page is text/xml ..

    if you rename it to .xml and open it, you will see it just fine..

    0 讨论(0)
提交回复
热议问题