The Difference Between a Button and a Link
July 28, 2026
Of the three proposals in the Triptych Project, my multi-year odyssey to add a few small-but-powerful features to HTML, the one that generates the most questions is Button Actions. The proposal itself is very straightforward: we want to add the action and method attributes to the button.
< button action =" /begin " method =" GET ">Start</ button >
Button Actions are such a simple primitive that people often ask why they’re needed. The answer rests on a distinction that web users intuitively understand but rarely have to think about directly: the difference between a button and a link.
I added a detailed “Buttons vs Links” section to the proposal, but I think it deserves a blog-style explanation as well, because most of the existing ones miss the mark.
If you think I forgot to mention something, please give the proposal a read first, to see if I addressed it there. If I didn't, definitely let me know.
Links represent a destination while buttons represent an action. Functionally, this means that links let users control what context they open in, while buttons don’t.
Web browsers offer countless affordances for re-contextualizing a link. Clicking or tapping the link will navigate the current page to that destination. Mouse users can middle-click the link to open it in a new tab or hover over the link to see where it goes. Context menus (right-click on desktop, long tap on mobile) have lots of link-specific options.
Web users are very familiar with the features that come with links. They know how to open them, copy them, bookmark them, share them with friends, and maintain them in an inadvisable number of browser tabs.
... continue reading