Tooltip is visible for hover
Tooltip is hidden for hover
<Tooltip title="Tooltip" placement="bottom">
<IconButton disabled>
<Done/>
</IconButton>
</Tooltip>
| Tech | Version |
|--------------|---------|
| Material-UI | v1.0.0-beta.12 |
Disabled elements do not fire events. You can however place a DIV over top of the element and listen to the event fired on that element instead.
https://stackoverflow.com/questions/18113937/fire-onmouseover-event-when-element-is-disabled
Implementing this suggestion looks like this, and it work.
<Tooltip title="Tooltip" placement="bottom">
<div>
<IconButton disabled>
<Done />
</IconButton>
</div>
</Tooltip>
I was also thinking of using the component
property but it doesn't work because of the pointer-events: none;
style:
<Tooltip title="Tooltip" placement="bottom">
<IconButton component="div" disabled>
<Done />
</IconButton>
</Tooltip>
@oliviertassinari Sorry, didn't know. Thanks.
@bravecow I think that we can add a warning if more people raise this issue.
So is the accepted solution to this going to be putting a div between buttons and tooltips? Having a tooltip is typically the most helpful on disabled buttons, to indicate why the button is disabled.
What if we added a prop to the Tooltip
component that signified it to appear even when the child is disabled? It would just implement this solution under the hood but at least the user wouldn't be left wondering why tooltips don't work on disabled buttons.
How do you turn off the tooltip warning?
How do you turn off the tooltip warning?
@goyney https://github.com/mui-org/material-ui/issues/8416#issuecomment-332556082
@oliviertassinari How do I turn off the tooltip warning without cluttering up the DOM?
I have several toolbars of buttons that are disabled when content is loading. Each button has a tooltip on it. Once the document loads, they all enable. Having to wrap every. single. button. in a span
to suppress this warning is obnoxious.
@goyney What about conditionally rendering a Tooltip when needed? As far as I understand it, you don't want to display any tooltip when the button is disabled.
I always want to display a tooltip. How about a suppressWarnings
prop or something on the tooltip.
I always want to display a tooltip
@goyney Even when the button is disabled?
Yes, that is what I said. lol
Like I mentioned above, tooltips are of extra use to users when a button is disabled @oliviertassinari, in order to indicate to them why a button is disabled.
@dskoda1 I have opened #11601.
Disabled elements do not fire events. You can however place a DIV over top of the element and listen to the event fired on that element instead.
https://stackoverflow.com/questions/18113937/fire-onmouseover-event-when-element-is-disabled
Implementing this suggestion looks like this, and it work.
<Tooltip title="Tooltip" placement="bottom"> <div> <IconButton disabled> <Done /> </IconButton> </div> </Tooltip>
This helps in showing the tooltip on the disabled button but the button which is enclosed in the 'div' loses its styling for me. What am I missing here?
Most helpful comment
https://stackoverflow.com/questions/18113937/fire-onmouseover-event-when-element-is-disabled
Implementing this suggestion looks like this, and it work.