【问题标题】:Visual Studio Not Displaying SVG image as backgroundVisual Studio 不显示 SVG 图像作为背景
【发布时间】:2011-12-20 12:50:46
【问题描述】:

我有一个带有 html 文件(Html 5)的 asp.net 项目。我正在尝试使用 CSS 3 将 SVG 设置为我的 body 标签的背景。我的文件是这样的。

在我的 Style.css 中。

当我双击并打开 html 文件时。我可以看到充满 SVG 的主体,但是当我使用 VS 2010 进行调试时,这不起作用。

这是我使用 vs 2010 调试 html 时得到的结果。

我在这里错过了什么吗?如何解决这个问题?

【问题讨论】:

  • 您是否在网络选项卡中确认正在下载 SVG 文件?

标签: visual-studio-2010 html svg


【解决方案1】:

我的解决方法是在本地创建我自己的 httphandler,它覆盖了 svg 的内容类型。

public class SvgHandler : IHttpHandler
{

    public bool IsReusable
    {
        get { return false; }
    }

    public void ProcessRequest(HttpContext context)
    {
        context.Response.ContentType = "image/svg+xml";
        context.Response.BinaryWrite(File.ReadAllBytes(context.Request.PhysicalPath));
        context.Response.End();
    }
}

在 web.config 中我添加了:

<httpHandlers>
  <add verb="*" path="*.svg" type="SvgHandler" />
</httpHandlers>

使用此解决方案,您不必使用 IIS express,只需使用 Visual Studio 2010 中的常规开发服务器即可

【讨论】:

  • 太棒了,为我节省了一些时间和精力。谢谢!
【解决方案2】:

内置的 Visual Studio Web 服务器只能提供一组有限的 mime 类型。 SVG 不是其中之一。

请参阅此处以获得简明的答案: https://serverfault.com/questions/359904/how-to-configure-iis-for-svg-and-web-testing-with-visual-studio

【讨论】:

    猜你喜欢
    • 2016-07-09
    • 2013-06-18
    • 1970-01-01
    • 2014-03-24
    • 1970-01-01
    • 2017-02-14
    • 2015-05-03
    • 1970-01-01
    • 2015-11-21
    相关资源
    最近更新 更多