More than 900 pure CSS3 icons!
Each icon uses a single anchor element (one div) and just one color: the
currentColor (and transparent) except for the colored icons (as the name suggests). Thus they can easily be included in a page with a single HTML element and use the current color and current font size.
Why use iConicss?
- Because CSS3 is now widely suported by all main browsers.
- Because it may result in cool transition and morphing effects when changing icons.
- Because it's fun! Like building a Lego
®️model with a limited set of bricks.
- Some side effects may result in some browsers
- IE doesn't compute properly the
currentColorkeyword in the CSS
linear-gradient()(it's a known bug since 2014!). This will impact icons that use gradient background-image (just a few ones).
How to use it?
Install iConicss using
npm install iconicss or download iconicss.min.css then add it in your html page:
<link rel="stylesheet" href="iconicss.min.css">
Using npm you can
import 'iconicss/dist/iconicss.min.css' or individual files such as
import 'iconicss/css/github.css' but you'll have to
import 'iconics iconicss/icss.css before.
Then just add
icss- classes to an
<i> elements to add a new icon on your page:
You can change color of icons as simple as set
color in CSS.
<i class="icss-home" style="color:red;"></i>
You can change the size of the icon just by changing the
font-size in CSS
To animate the icon when changing just add the
icss-anim class to the element.
<i class="icss-anim icss-home"></i>
Then just change the
icss-home class to
icss-github to let the transition play.
- Each icon must be a single element
- Don't use extra color (just the currentColor and transparen), except for colored icons...
- Use relative font size units (em) to let the icon resize
- Color icons must have a standard icon and color must be justify (brand color)
- Avoid transform on the base element (except rotation when it applies to the whole icon)
- Use gradients sparingly (because IE doesn't love it)
If you want to fork, modify or create new icons, you can use the debug mode.
Just click on the button on top of the
index.html page to access a page with one css per icon. Thus the icon's css can be easealy accessed, modified and saved directly in your browser.
If you create a new icon, be sure to add a css with its name in the
./css directory and add an entry in the config.json file of the project.
Individual css don't include prefixed methods: they are added using
gulp-autoprefixer when building the project.
To achieve the task it uses the gulp command.
building with gulp
To install Gulp, you must first download and install node.js. Then, from the command line:
- Install gulp globally with
npm install -g gulp.
- Navigate to the root
/iconicssdirectory, then run
npm install. npm will look at the package.json file and automatically install the necessary local dependencies listed there.
When completed, you'll be able to run the
gulp commands provided from the command line to create the distribution files in the
./dist directory of the project.
Please use the GitHub issue tracker for all bugs and feature requests. Before creating a new issue, do a quick search to see if the problem has been reported already.
Copyright (c) 2017 Jean-Marc Viglino. Licensed under MIT Licence.