Hello There, Today I am going to show how to create tooltip using scss. It’s very easy to create tooltip without using javascript.
We can use pseudo-elements to pull in text and display it on :hover. (You could use the HTML title attribute to
effectively accomplish the same solution, but you can’t style the tooltip to your liking.
Here is the example of this:
HTML
<span class="tooltip-toggle" data-tooltip="Sample text for your tooltip!"> Label for your tooltip</span>SCSS
.tooltip-toggle { cursor: pointer; position: relative;
//Tooltip text container - above element //You can adjust the position to make the container appear below or beside the element &::before { background-color: #000; border-radius: 5px; color: #fff; content: attr(data-tooltip); //This pulls in the text from the element with the tooltip left: -80px; //This centers the container above the element padding: 1rem; position: absolute; text-transform: none; top: -80px; //This places the container above the element that needs a tooltip transition: all 0.5s ease; width: 160px; }
//Tooltip arrow //You can adjust the position of this to align nicely with the element that //needs a tooltip. You can also use `transform` to rotate it to make the //tooltip work below or next to the element. &::after { border-left: 5px solid transparent; border-right: 5px solid transparent; border-top: 5px solid #000; content: ' '; font-size: 0; left: 9px; //This centers the arrow above the element with the tooltip line-height: 0; margin-left: -5px; position: absolute; top: -12px; //This positions the arrow at the bottom of the container width: 0; }
//Setting up the transition &::before, &::after { opacity: 0; pointer-events: none; }
//Triggering the transition &:hover::before, &:hover::after { opacity: 1; transition: all 0.75s ease; }}For more detail please visit this link.
Enjoy !!!