# Icon [//]: # 'AUTO INSERT HEADER PREPUBLISH' A web component for displaying icons. ## How to use ### Installation ```sh npm i --save @lion/icon ``` ```js import '@lion/icon/lion-icon.js'; ``` ### Basic usage Include the import for both the custom element the icons you want: ```html ``` Use it in your lit-html template: ```html ``` ### Icon format Icon file is an ES module with an extension `.svg.js` which exports a function like this: ```js // bug.svg.js export default tag => tag` ... `; ``` Make sure you have `focusable="false"` in the icon file to prevent bugs in IE/Edge when the icon appears in tab-order. ### Accessibiltiy You may add an `aria-label` to provide information to visually impaired users: ```html ``` A `lion-icon` without an `aria-label` attribute will be automatically be given an `aria-hidden` attribute. ### Styling #### Dimensions By default, a `lion-icon` will be `1em` × `1em` (the current line-height). A `lion-icon` may be styled like a regular HTML element: ```html ``` #### SVG Styling `lion-icon` uses SVGs and may be styled with CSS, using CSS properties such as `fill` and `stroke`: ```html ``` See [SVG and CSS](https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/SVG_and_CSS) on MDN web docs for more information.