How to enable Bootstrap tooltip on disabled button ?
Button or link elements with disabled class and attribute is not interactive. It means users cannot focus, hover, or click them to trigger a tooltip (or popover) or any functions. Use the following approaches to enable a tooltip on disabled-buttons.
- Using jQuery
- Using HTML
- Using CSS
Initializing tooltip:
- By default tooltips is initialized by selecting the specified element and call the tooltip() method using jQuery. Then add a title attribute to that specified element which contains what text to be displayed inside tooltip.
- To position the tooltip data-placement attribute must be added to that specified element with top/bottom/right/left as its values.
// Initializing the tooltip $(document).ready(function() { $('[data-toggle="tooltip"]').tooltip(); });
Note: By default data-toggle=”tooltip” will enable tooltip of disabled button.
Approach:
- Initialize tooltips in bootstrap disabled buttons with the specified element and call the tooltip() method.
- To trigger tooltip on disabled button by wrapping them in <span> span tag and <div> div tag and then adding ‘data-toggle’,’data-placement’ and ‘title’ attributes to it along with its values respectively.
Example: This example illustrates triggering tooltip by wrapping disabled button inside div and span tag.
html
<!DOCTYPE html> < html lang="en"> < head > < title >Disabled Button Tooltip</ title > < meta charset="utf-8"> < meta name="viewport" content=" width = device -width, initial-scale = 1 "> < link rel="stylesheet" href= "https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css"> < script src= "https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"> </ script > < script src= "https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"> </ script > < script src= "https://maxcdn.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"> </ script > < style > .disabled { pointer-events: all !important; } </ style > </ head > < body style="text-align:center;"> < div class="container pt-5"> < h1 style="color:green;"> w3wiki </ h1 > < h4 > Disabled buttons wrapped inside an elements </ h4 > < div class="d-inline-block" tabindex="0" data-toggle="tooltip" data-placement="bottom" title="This button is disabled"> < button type="button" class="btn btn-warning" style="pointer-events: none;" disabled> Button wrapped in Div tag </ button > </ div > < span class="d-inline-block" tabindex="0" data-toggle="tooltip" data-placement="right" title="This button is disabled"> < button class="btn btn-outline-warning" style="pointer-events: none;"type="button" disabled> Button wrapped in span tag </ button > </ span > </ div > < script > $(document).ready(function() { $('[data-toggle="tooltip"]').tooltip(); }); </ script > </ body > </ html > |
Output:
Example 2: This example uses HTML to display tooltip information about the content on any disabled button. For this, just disable the button and add the title attribute on it.
html
<!DOCTYPE html> < html > < head > < title > Tooltip on disabled button </ title > < style > h1 { color: green; } </ style > </ head > < body > < center > < h1 >w3wiki</ h1 > < h3 >Tooltip on Disabled button</ h3 > < div > < button disabled="disabled" title="My Tooltip"> Disabled Button </ button > < button title="Here it's common">Not Disabled</ button > </ div > </ center > </ body > </ html > |
Output:
Example 3: Trigger tooltip on disabled bootstrap buttons using CSS.
html
<!DOCTYPE html> < html > < title >Disabled Button Tooltip</ title > < style > .tooltip1 { position: relative !important; display: inline-block !important; width: 175px !important; font-size: 14px; } .tooltip1 .tooltiptext { visibility: hidden; width: 120px !important; background-color: black !important; color: #fff !important; text-align: center !important; border-radius: 6px !important; padding: 5px 0 !important; position: absolute !important; z-index: 1 !important; top: -5px !important; left: 110% !important; } .tooltip1 .tooltiptext::after { content: ""; position: absolute !important; top: 50% !important; right: 100% !important; margin-top: -5px !important; border-width: 5px !important; border-style: solid !important; border-color: transparent black transparent transparent !important; } .tooltip1:hover .tooltiptext { visibility: visible !important; } </ style > < body style="text-align:center;"> < div class="container pt-5"> < h1 style="color:green;"> w3wiki </ h1 > < h4 > Trigger tooltip on disabled bootstrap buttons using CSS </ h4 > < button class="btn btn-outline-info tooltip1 " disabled> Hover over me < span class="tooltip1 tooltiptext"> disabled button </ span > </ button > </ div > </ body > </ html > |
Output:
Contact Us