0

我正在使用此代码在 C# MVC4 应用程序的链接中制作图像:

@Html.ActionLink(" ", "../Edit", new { id = item.Id }, new { @class = "edit" })

和 CSS :

a.edit
        {
            background: url("~/Content/Images/edit.png") no-repeat top left;
            display: block;
}

但是图像不收费(img 路径上的 404),

所以我期待 RouteConfig,但谷歌说不。

图片在MyAppName/Content/Images/edit.png

谢谢帮助我

编辑:我试过

url("~/Content/Images/edit.png") 
url("/Content/Images/edit.png") 
url("../Content/Images/edit.png") 
url("../../Content/Images/edit.png")
4

5 回答 5

1

我认为您想要background-image的不仅仅是background

a.edit {
        background-image: url("~/Content/Images/edit.png");
        backbround-repeat: no-repeat;
        background-position: left top;
        display: block;
}
于 2013-06-05T13:07:16.143 回答
0

尝试不使用“a”,例如:

.edit
{
      background: url("~/Content/Images/edit.png") no-repeat top left;
      display: block;
}
于 2013-06-05T12:48:41.460 回答
0

在您提供的@HTML.ACTIONLINK 的链接文本上它是空的,这将引发错误。采用

 <a href="../Edif" class="edit"></a> instead
于 2013-06-05T13:10:23.613 回答
0

根据我对 MVC 的一点经验,实现所需功能的唯一方法是将 CSS 包含在视图本身中:

<style type="text/css">
    a.edit { background-image: url("@Url.Content("~/Content/Images/edit.png")"); }
</style>

@Url.Content正确映射给定的 URL。

于 2013-06-05T13:13:02.043 回答
0

如果没有地方,图像无法显示,所以当我将“测试”内容插入“”时,图像出现了。

解决方案 :

        a.edit {
        background: url("@Url.Content("Content/Images/edit.png")") no-repeat transparent;
        width: 14px;
        height: 14px;
        display: inline-block;
        float: left;
}

谢谢大家

于 2013-06-05T14:12:30.190 回答