Simple beautiful tooltip in the form of Svelte 3 action
This is Svelte's action to create some small minimalistic tooltips.
npm i svelte-tooltip-action
<script>
import tooltip from 'svelte-tooltip-action'
...
const text = 'Some extra text here (advice)'
const style = 'left: 0; bottom: -24px;'
</script>
<div use:tooltip={{ text: text, style: style }}>
Your awesome content here (for example, buttons)
</div>
| Name | Type | Default | Description |
|---|---|---|---|
| text | string | empty string | Tooltip's text |
| style | string | empty string | Your custom CSS |
You can use style parameter to customize position of your tooltip instance with CSS left: ..., top: ..., right: ..., bottom: .... Sometimes it's useful to combine several rules together. For example, if you want horizontally center tooltip use: left: 50%; width: $tooltip-width; margin-left: $tooltip-width / 2.
position: relative on your <div /> (on <div /> with use:tooltip)overflow: hidden on parent HTML tags (in case of your tooltip will go over parents)target Svelte property is used under the hood:new Tooltip({
target: node,
props: { text, style },
})
This property has some limitations. For example you cannot use it on <img/>, but you can wrap the image, so the tooltip will work:
<div use:tooltip={{text: 'Hi', style: 'left: 0; bottom: 0;'}}>
<img src='...' alt='...'/>
</div>
z-indexMIT © Denis Stasyev