【问题标题】:ASP.Net Development Server SVG File Serving for CSS background-image用于 CSS 背景图像的 ASP.Net 开发服务器 SVG 文件服务
【发布时间】:2011-08-24 06:58:04
【问题描述】:

我在将 SVG 文件设置为 MVC 3 站点(Razor 视图引擎)中元素的背景时遇到了一些问题,我想知道 ASP.Net 开发服务器(Cassini?)是否正确地为 SVG 文件提供服务。

我的 SVG 文件位于 /img/plus.svg,这是它的内容

<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 15.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
     width="25px" height="25px" viewBox="0 0 25 25" enable-background="new 0 0 25 25" xml:space="preserve">
<polygon fill="#231F20" points="25,8.621 16.38,8.621 16.38,0 8.621,0 8.621,8.621 0,8.621 0,16.379 8.621,16.379 8.621,25 
    16.38,25 16.38,16.379 25,16.379 "/>
</svg>

我用来设置背景的css规则是这样的:

.plusIcon { background-image: url(@Url.Content("~/img/plus.svg")); }

我也将此添加到我的 Web.Config &lt;system.webServer&gt;&lt;staticContent&gt; 部分:

<!-- Proper svg serving. Required for svg webfonts on iPad -->
<remove fileExtension=".svg"/>
<remove fileExtension=".svgz"/>
<mimeMap fileExtension=".svg" mimeType="images/svg+xml" />
<mimeMap fileExtension=".svgz" mimeType="images/svg+xml" />

当我导航到 URL /img/plus.svg 时,文件已正确下载。

这只是一个开发服务器问题,我应该在 IIS 中尝试吗?

【问题讨论】:

    标签: asp.net-mvc iis html asp.net-development-serv


    【解决方案1】:

    原来这只是 Cassini,ASP.Net 开发服务器问题。当上传到正确的 IIS 站点时,SVG 文件会正确地提供

    【讨论】:

    • 谢谢你 - 我刚刚遇到了完全相同的问题。节省了我几分钟的谷歌搜索时间:-)
    • 在配置中切换 VS 项目以部署到“本地 IIS Web 服务器”对我有用。但是,IE9 仍然不会显示它,除非您在 &lt;head&gt; 部分中有 &lt;meta http-equiv="X-UA-Compatible" content="IE=9"&gt;
    • 如果知道如何修复/调整 Cassini 以使其呈现 SVG,我也很高兴。
    • 微软应该解决这个问题。
    • @JeanJimenez - 确实应该。至少可以说很烦人。
    猜你喜欢
    • 1970-01-01
    • 2019-10-26
    • 1970-01-01
    • 1970-01-01
    • 2023-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多