Can I add a class to an HTML.ActionLink in MVC3

asp.net Mvc

asp.net Mvc Problem Overview


I have this code and would like to add a class to the link. Is it possible to do this in MVC3?

Html.ActionLink("Create New", "Create")

asp.net Mvc Solutions


Solution 1 - asp.net Mvc

Yes, you can just add another parameter with object representing css class:

Html.ActionLink("Create New", "Create", CONTROLLERNAME, null, new { @class= "yourCSSclass"} )

It can be translated to:

Html.ActionLink(link text, action name, controller name, route values object, html attributes object)

Edit:

To add custom styles, use this:

Html.ActionLink(
"Create New",
"Create",
CONTROLLERNAME,
null,
new { @class= "yourCSSclass", @style= "width:100px; color: red;" }
)

Solution 2 - asp.net Mvc

@Html.ActionLink("ClickMe",  // link text
                 "Index", // action name
                 "Home",  // controller 
                 new { id = 2131 }, // (optional) route values
                 new { @class = "someClass" }) // html attributes

Solution 3 - asp.net Mvc

Html.ActionLink("Create New", "Create", null, htmlAttributes: new { @class = "className" })

Solution 4 - asp.net Mvc

According to the documentation, this should do the trick:

Html.ActionLink("LinkText", "Action", "Controller", new { }, new {@class="css class"})

Edit: Thanks for noticing Dampe, I updated the code sample.

Solution 5 - asp.net Mvc

You can use the ActionLink overload which takes an htmlAttributes parameter to add a class to the generated element:

Html.ActionLink("Create New", "Create", new {}, new { @class = cssClass });

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionSangoView Question on Stackoverflow
Solution 1 - asp.net MvcDambView Answer on Stackoverflow
Solution 2 - asp.net MvcRPM1984View Answer on Stackoverflow
Solution 3 - asp.net MvcarchilView Answer on Stackoverflow
Solution 4 - asp.net MvcRhapsodyView Answer on Stackoverflow
Solution 5 - asp.net MvcverdesmaraldView Answer on Stackoverflow