将 Css 类添加到 ASP.NET MVC 的 ActionLink

Posted

技术标签:

【中文标题】将 Css 类添加到 ASP.NET MVC 的 ActionLink【英文标题】:Add Css Class to ActionLink of ASP.NET MVC 【发布时间】:2012-01-19 09:23:09 【问题描述】:

在 ASP.NET MVC3 中,这是 Razor 视图中的常规操作链接:

<li>@html.ActionLink("Home", "Index", "Home")</li>

和相关的html dom是:

<li><a href="/HomePage/">Home</a></li>

如果我将 css 类添加到 &lt;a&gt; 元素,那么我的 css 可以正常工作,如下所示:

<li><a class="MyCssClass" href="/HomePage/">Home</a></li>

有人知道我该怎么做吗?

【问题讨论】:

【参考方案1】:
<li>@Html.ActionLink("Home", "Index", "Home", new  @class = "myclass" )</li>

【讨论】:

【参考方案2】:

使用另一个重载:

<li>@Html.ActionLink("Home", "Index", "Home", new  @class="YourClass" )</li>

【讨论】:

【参考方案3】:

您可以这样做以传递 html 属性。

@Html.ActionLink("Home", "Index", "Home", new  @class = "MyCssClass" )

您也可以传递其他 html 属性。

@Html.ActionLink("Home", "Index", "Home", new  @class = "MyCssClass", otherAttributeName = 1 ) 

希望这会有所帮助

【讨论】:

【参考方案4】:

如果您使用的是较新版本的 ASP.NET MVC 框架,则必须为 routeValues 传递一个额外的参数。没有方法签名重载接受 htmlAttributes 作为第 4 个参数,所以如果你不传入 routeValues,只需传入一个 null,如下所示:

@Html.ActionLink("Home", "Index", "Home", null, new  @class = "MyCssClass" )

【讨论】:

以上是关于将 Css 类添加到 ASP.NET MVC 的 ActionLink的主要内容,如果未能解决你的问题,请参考以下文章

如何在 ASP.net Core 中添加 js 和 css 文件?

asp.net mvc 如何添加css

如何在 ASP.NET MVC 中将 CSS 类应用于 Html.ActionLink?

ASP.NET MVC:其他人如何应用条件 CSS 类?

ASP.NET MVC 视图添加样式表类或更改引导程序

如何将 Web API 控制器添加到现有的 ASP.NET Core MVC?