将 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 类添加到 <a>
元素,那么我的 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 文件?