Giter VIP home page Giter VIP logo

iconicss's Introduction

iConicss

More than 400 pure CSS3 icons!

Look at the demo page!

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:registered: model with a limited set of bricks.

Known limitation

  • Some side effects may result in some browsers
  • IE doesn't compute properly the currentColor keyword 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:

<i class="icss-home"></i>

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.

Developpement

some rules

  1. Each icon must be a single element
  2. Don't use extra color (just the currentColor and transparen), except for colored icons...
  3. Use relative font size units (em) to let the icon resize
  4. Color icons must have a standard icon and color must be justify (brand color)
  5. Avoid transform on the base element (except rotation when it applies to the whole icon)
  6. Use gradients sparingly (because IE doesn't love it)

debug mode

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:

  1. Install gulp globally with npm install -g gulp.
  2. Navigate to the root /iconicss directory, 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.

Bugs

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.

Licence

Copyright (c) 2017 Jean-Marc Viglino. Licensed under MIT Licence.

iconicss's People

Contributors

viglino avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.