Remove hand-cursor on links displayed as button
See original GitHub issueAs explained quite clearly on this article, hand (pointer) cursor should be limited to links on text and images.
The rule seems to be: for a button, there is no need to use a pointer cursor. for a text link, a pointer cursor should be used.
Currently, the underlying element is not altered: if you render a classic link as a button (<a> with class="btn") the cursor is still a hand cursor.
For example, in the documentation for the first button. For this button only, the cursor is a pointer.
Also note that the same is true for button elements rendered as links (<button> with class="btn-link"). The link should be rendered with a hand cursor. See this example on the doc.
A naïve implementation could be:
.btn-link { cursor: pointer; }
a.btn { cursor: default; }
If the solution is as simple as this, I can submit a PR.
Regards,
Issue Analytics
- State:
- Created 6 years ago
- Reactions:2
- Comments:22 (17 by maintainers)

Top Related StackOverflow Question
for what it’s worth, i’m actually now leaning (personally) towards just adding
cursor:pointerto links and buttons, rather than trying to special-case “only link-like links/buttons that somehow act as links should use that, all others get the default”. as much as i sympathise with the original “buttons shouldn’t use the pointer cursor” article, i really don’t think users are so utterly confused by the practice…/ranton What a horrible design decision based on an article comparing
desktop applications with unified styling by the OSwith the browser, having a different visual display of buttons on every single page.Beside that, historically browser come from displaying content, not from being the “application windows” they are going to be used more and more - while desktop applications have exactly the inverse history, they are used as applications only and beside some widgets, they only do exactly that.
The hand cursor was one of this indicators in the web, even for experts, to see if, out of all the thousand items, one item is interactive or not, since you simply cannot guess in the web. Buttons look flat, non flat whatever, colored, with background, transparent and beside ALL that, placed on every possible place possible.
You find call to action buttons on every position in the coordinate system when you are looking at the browser. The article then compares that with a Desktop App-Menu which is placed on the top every single time and does look the same for every single application.
Its repeating again and again, some UX designer forces to invent something new, so muuuch simpler and sleeker and “teaching” other “people in the world” that this will be simpler. Paddling back in the end, since it was nothing more then then a made up invention…much rather just a change for the sake of a change… to “see any kind of progress” without having any kind of useful addition at all.
All that fits perfectly for this PR, all it does is harm without adding any more convenience, without removing any overhead or bloat or being faster.
At least people who really care like http://www.material-ui.com/#/components/flat-button do not just jump on a bangwagon of “i have something new here” and “new is better, always”. /rantoff
And yes of course, we added it back again, wont be a surprise for a lot more people using bootstrap for web-applications.