Hint.css
A CSS only tooltip library for your lovely websites.
README
A tooltip library in CSS for your lovely websites
hint.css is written as a pure CSS resource using which you can create cool accessible tooltips for your web app. It does not rely on JavaScript but rather uses aria-label/*data- attribute, pseudo elements, content property and CSS3 transitions to create the tooltips. Also it uses BEM naming convention particularly for the modifiers.
Get Started
Get the library using one of the following ways:
1. GitHub
Full build
- [unminified] : https://raw.github.com/chinchang/hint.css/master/hint.css
- [minified] : https://raw.github.com/chinchang/hint.css/master/hint.min.css
Base build (Does not include color themes and fancy effects)
- [unminified] : https://raw.github.com/chinchang/hint.css/master/hint.base.css
- [minified] : https://raw.github.com/chinchang/hint.css/master/hint.base.min.css
2. Bower : bower install hint.css
3. npm: npm install --save hint.css
Now include the library in the HEAD tag of your page:
- ``` html
- <link rel="stylesheet" href="hint.css" />
- ```
or
- ``` html
- <link rel="stylesheet" href="hint.min.css" />
- ```
Now, all you need to do is give your element any position class and tooltip text using the aria-label attribute.
Note, if you don't want to use aria-label attribute, you can also specify the tooltip text using the data-hint attribute, but its recommended to use aria-label in support of accessibility. Read more about aria-label.
- ``` html
- Hello Sir, <span class="hint--bottom" aria-label="Thank you!">hover me.</span>
- ```
Use it with other available modifiers in various combinations. Available modifiers:
- Colors - hint--error, hint--info, hint--warning, hint--success
- Sizes - hint--small, hint--medium, hint--large
- hint--always
- hint--rounded
- hint--no-animate
- hint--bounce
- hint--no-arrow
Upgrading from v1.x
If you are already using v1.x, you may need to tweak certain position classes because of the way tooltips are positioned in v2.
Changing the prefix for class names
Don't like BEM naming (hint--) or want to use your own prefix for the class names?
Simply update src/hint-variables.scss and change the $hintPrefix variable.
To generate the css file, please read the contributing page.
Who's Using This?
- Fiverr
- Siftery
- LessPass
- Tridiv
- Prototyp
- Tradus
- Tolks
Are you using hint.css in your awesome project too? Just tweet it out to @hint_css or let us know on the mailing list.
Browser Support
hint.css works on all latest browsers, though the transition effect is supported only on IE10+, Chrome 26+ and FF4+ at present.
- Chrome - basic + transition effects
- Firefox - basic + transition effects
- Opera - basic
- Safari - basic
- IE 10+ - basic + transition effects
- IE 8 & 9 - basic
FAQs
Checkout the FAQ Wiki for some common gotchas to be aware of while usinghint.css.
Contributing
hint.css is developed in SASS and the source files can be found in the src/ directory.
If you would like to create more types of tooltips/ fix bugs/ enhance the library etc. you are more than welcome to submit your pull requests.
Changelog & Updates
See the Changelog.
To catch all updates and discussion, join the mailing list: [hintcss@googlegroups.com](https://groups.google.com/forum/?fromgroups=#!forum/hintcss).
Or follow on twitter: [@hint_css](https://twitter.com/hint_css)
License
Hint.css is free for personal and commercial use under the MIT License.
Credits
This doesn't make use of a lot of BEM methodology but big thanks to @csswizardry, @necolas for their awesome articles on BEM and to @joshnh through whose work I came to know about it :)