I have noticed in the last couple years a lot of web forms, if they have cancel at all, it is a link. I assume this is to drive the person to the UI element, a button in this case, that 99% of the population would want, but still keeping the cancel element there for those who otherwise wouldn't know (?) they could navigate away.

While I see the value of directing the user, using different elements seems like it could in itself provide a useability challenge. Thoughts?

  • 1
    Are you asking: Should I use a button or a hyperlink for my Submit/Cancel form?
    – Dair
    Aug 18, 2010 at 0:21
  • 7
    Classic article on the subject, for reference: lukew.com/resources/articles/psactions.asp (Not sure if it answers your question.) Aug 18, 2010 at 1:30
  • @Patrick McElhaney - Was on my way in here to link that article! Aug 18, 2010 at 1:39

3 Answers 3


Not confusing - the different elements is fine since it clearly indicates to the user which is the 'default' or main actionable button, simply by having the button be more prominent than the link.

Some might say that buttons denote actions and links denote navigation, but nowadays, I don't see that as being the case. Quite often users are asked to perform actions by clicking on links (such as in any one of a number of AJAX applications), so I believe that particular argument is not valid. In fact, the link should still work given that if the user clicks 'Cancel' they are taken to the original page, which would qualify as navigation.


We've discussed the specific "clear" action here: "Clear all" button history

The reference to LukeW's article is great and gives you another option - you can use the same element (e.g. button) but with different visual representation, for example, colored vs. grayed out.

However, it's perfectly fine to use a mix of button and link. You provide the users a clear single choice and users prefer web sites that don't make them think.

NOTE: If you are using links on your page to navigate away and are concerned about the users mistaking the action for a navigation, that might be valid although I don't think users might think "cancel" navigates anywhere.


You know why it's a link? Because they wanted to navigate away without assigning javascript actions to a button. Why doesn't it look like a button? I think someone didn't gather enough motivation to use CSS to make it look that way.

It can be done. Wordpress has a CSS class .button that makes anything look like a wordpress style button. Been there, seen that, made a cancel link that looks like a button.

[edit] Some people also consider it a good practice to make the cancel button look "secondary". See: http://www.lukew.com/resources/articles/psactions.asp

  • Those are some far-reaching assumptions to have for many different sites that all use the same pattern.
    – Rahul
    Aug 18, 2010 at 8:42
  • It's not an assumption, it's an example with a bit of irony.
    – naugtur
    Aug 18, 2010 at 9:43

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.