JSFiddle - React, Tailwind, and code Playground
by mynameisdonald
HTML
<div class="middle">
<div class="middle_row">
<button data-data="You clicked button A">A</button>
</div>
<div class="middle_row">
<button data-data="You clicked button B">B</button>
</div>
<div class="middle_row">
<button data-data="You clicked button C">C</button>
</div>
</div>
CSS
.middle {
display: table;
margin: 40px auto;
width: 300px;
}
.middle_row {
display: table-cell;
width: 33%;
}
.tip {
color: #fff;
font-size: 10px;
line-height: 1.333;
text-shadow: none;
padding: 2px 7px;
background: #da5a47;
border-radius: 4px;
font-weight: bold;
position: absolute;
display: block;
cursor: default;
white-space: nowrap;
margin-left: -40px;
margin-top: -20px;
}
.tip:after {
position: absolute;
display: block;
content: "";
bottom: -6px;
left: 50%;
width: 0;
height: 0;
margin-left: -3px;
overflow: hidden;
border: 3px solid transparent;
border-top-color: #da5a47;
}
JavaScript
$('body').on('click','button',function(){
if($(this).parent().find(".tip").length != 0){
$('.tip').remove();
} else {
$('.tip').remove();
$(this).before('<div class="tip">'+$(this).data('data')+'</div>');
}
});