SVG图像不显示asp.net mvc 4

时间:2014-03-05 11:51:26

标签: asp.net-mvc image svg xhtml

我有svg格式的图像。当我在一个简单的html上使用它时,它显示,但当我尝试在一个真实的项目(asp.net mvc 4,visual studio 2010)中使用它时,它不会显示。

    @model KZStream.Web.Site.Models.IamSelling.IamSellingModel
@using KZStream.Web.Site.Resources.Views.Products
@{
    Layout = "~/Views/Shared/_Mobile.cshtml";
}
<div id="wrapper">
    <div class="top-pannel">
        <div class="tp-languge">
            <a href="">Русский</a>
        </div>
        <div class="tp-basket">
        </div>
        <div class="tp-sign-in">
            <a href="">Войти</a>
        </div>
    </div>
    <header>
        <div class="main-page-header clearfix">
            <div class="mp-logo">
                <img src="/Content/images/mobile/MS_Logo.svg" alt="">
            </div>
            <div class="mp-join-us">
                <button class="kzstreambutton button-orange">
                    <span>Присоединиться</span>
                </button>
            </div>
        </div>
        <nav>
            <div class="main-page-menu">
            </div>
        </nav>
    </header>
    <div class="main-page-cont">
    </div>
    <footer>
    </footer>
</div>

6 个答案:

答案 0 :(得分:10)

尝试直接访问.svg文件,例如localhost:port/content/images/mobile/MS_Logo.svg

如果您收到不支持文件类型的消息,可以在Web.config中将其添加到下面,以确保您的服务器能够提供.svg格式

<system.webServer>
  <staticContent>
    <remove fileExtension=".svg" />
    <mimeMap fileExtension=".svg" mimeType="image/svg+xml" />
  </staticContent>
</system.webServer>

答案 1 :(得分:1)

调用svg文件的最佳方法是:

<object data='svg-test.svg' type='image/svg+xml' width='500' height='500' />

答案 2 :(得分:1)

好吧,伙计们,我发现了一些与我有关的问题。我发现大svg文件的解决方案是:

# Using xts 0.9-7
require(xts)
data(sample_matrix)
x <- tail(as.xts(sample_matrix, dateFormat = "Date"), 10)[,1]

plot(x)
lines(x, col = "darkgreen", lty=2)
v <- last(.index(x)[-nrow(x)])
abline(v = v, col = "red", lty = 3)
text(v, max(x), "label", pos = 2, srt = 90)

在razor文件中有另一种方法使用html partial但不幸的是这个技巧不能用于大svg文件。

希望这有帮助..

答案 3 :(得分:0)

除了web.config更改。如果您使用的是ASP.net,请确保在IIS中运行VS解决方案,但不要在VS开发服务器上运行。欲获得更多信息。请参考这个问题。 Setting MIME types using the ASP.NET Development Server

答案 4 :(得分:0)

不要忘记width =“” height =“”参数。我已解决此问题

答案 5 :(得分:-1)

在Razor Markup上渲染SVG图像的最佳方法是使用IIS服务器:单击Project&gt;使用IIS Express(或者您安装的版本,通常是IIS7)。如果这不起作用,请确保添加了Myme Type。