You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							212 lines
						
					
					
						
							3.7 KiB
						
					
					
				
			
		
		
	
	
							212 lines
						
					
					
						
							3.7 KiB
						
					
					
				| // @flow
 | |
| import type { Styles } from '../types/style'
 | |
| 
 | |
| /**
 | |
|  * CSS to normalize abnormalities across browsers (normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css)
 | |
|  *
 | |
|  * @example
 | |
|  * // Styles as object usage
 | |
|  * const styles = {
 | |
|  *    ...normalize(),
 | |
|  * }
 | |
|  *
 | |
|  * // styled-components usage
 | |
|  * const GlobalStyle = createGlobalStyle`${normalize()}`
 | |
|  *
 | |
|  * // CSS as JS Output
 | |
|  *
 | |
|  * html {
 | |
|  *   lineHeight: 1.15,
 | |
|  *   textSizeAdjust: 100%,
 | |
|  * } ...
 | |
|  */
 | |
| export default function normalize(): Array<Styles> {
 | |
|   return [
 | |
|     {
 | |
|       html: {
 | |
|         lineHeight: '1.15',
 | |
|         textSizeAdjust: '100%',
 | |
|       },
 | |
| 
 | |
|       body: {
 | |
|         margin: '0',
 | |
|       },
 | |
| 
 | |
|       main: {
 | |
|         display: 'block',
 | |
|       },
 | |
| 
 | |
|       h1: {
 | |
|         fontSize: '2em',
 | |
|         margin: '0.67em 0',
 | |
|       },
 | |
| 
 | |
|       hr: {
 | |
|         boxSizing: 'content-box',
 | |
|         height: '0',
 | |
|         overflow: 'visible',
 | |
|       },
 | |
| 
 | |
|       pre: {
 | |
|         fontFamily: 'monospace, monospace',
 | |
|         fontSize: '1em',
 | |
|       },
 | |
| 
 | |
|       a: {
 | |
|         backgroundColor: 'transparent',
 | |
|       },
 | |
| 
 | |
|       'abbr[title]': {
 | |
|         borderBottom: 'none',
 | |
|         textDecoration: 'underline',
 | |
|       },
 | |
| 
 | |
|       [`b,
 | |
|     strong`]: {
 | |
|         fontWeight: 'bolder',
 | |
|       },
 | |
| 
 | |
|       [`code,
 | |
|     kbd,
 | |
|     samp`]: {
 | |
|         fontFamily: 'monospace, monospace',
 | |
|         fontSize: '1em',
 | |
|       },
 | |
| 
 | |
|       small: {
 | |
|         fontSize: '80%',
 | |
|       },
 | |
| 
 | |
|       [`sub,
 | |
|     sup`]: {
 | |
|         fontSize: '75%',
 | |
|         lineHeight: '0',
 | |
|         position: 'relative',
 | |
|         verticalAlign: 'baseline',
 | |
|       },
 | |
| 
 | |
|       sub: {
 | |
|         bottom: '-0.25em',
 | |
|       },
 | |
| 
 | |
|       sup: {
 | |
|         top: '-0.5em',
 | |
|       },
 | |
| 
 | |
|       img: {
 | |
|         borderStyle: 'none',
 | |
|       },
 | |
| 
 | |
|       [`button,
 | |
|     input,
 | |
|     optgroup,
 | |
|     select,
 | |
|     textarea`]: {
 | |
|         fontFamily: 'inherit',
 | |
|         fontSize: '100%',
 | |
|         lineHeight: '1.15',
 | |
|         margin: '0',
 | |
|       },
 | |
| 
 | |
|       [`button,
 | |
|     input`]: {
 | |
|         overflow: 'visible',
 | |
|       },
 | |
| 
 | |
|       [`button,
 | |
|     select`]: {
 | |
|         textTransform: 'none',
 | |
|       },
 | |
| 
 | |
|       [`button,
 | |
|     html [type="button"],
 | |
|     [type="reset"],
 | |
|     [type="submit"]`]: {
 | |
|         WebkitAppearance: 'button',
 | |
|       },
 | |
| 
 | |
|       [`button::-moz-focus-inner,
 | |
|     [type="button"]::-moz-focus-inner,
 | |
|     [type="reset"]::-moz-focus-inner,
 | |
|     [type="submit"]::-moz-focus-inner`]: {
 | |
|         borderStyle: 'none',
 | |
|         padding: '0',
 | |
|       },
 | |
| 
 | |
|       [`button:-moz-focusring,
 | |
|     [type="button"]:-moz-focusring,
 | |
|     [type="reset"]:-moz-focusring,
 | |
|     [type="submit"]:-moz-focusring`]: {
 | |
|         outline: '1px dotted ButtonText',
 | |
|       },
 | |
| 
 | |
|       fieldset: {
 | |
|         padding: '0.35em 0.625em 0.75em',
 | |
|       },
 | |
| 
 | |
|       legend: {
 | |
|         boxSizing: 'border-box',
 | |
|         color: 'inherit',
 | |
|         display: 'table',
 | |
|         maxWidth: '100%',
 | |
|         padding: '0',
 | |
|         whiteSpace: 'normal',
 | |
|       },
 | |
| 
 | |
|       progress: {
 | |
|         verticalAlign: 'baseline',
 | |
|       },
 | |
| 
 | |
|       textarea: {
 | |
|         overflow: 'auto',
 | |
|       },
 | |
| 
 | |
|       [`[type="checkbox"],
 | |
|     [type="radio"]`]: {
 | |
|         boxSizing: 'border-box',
 | |
|         padding: '0',
 | |
|       },
 | |
| 
 | |
|       [`[type="number"]::-webkit-inner-spin-button,
 | |
|     [type="number"]::-webkit-outer-spin-button`]: {
 | |
|         height: 'auto',
 | |
|       },
 | |
| 
 | |
|       '[type="search"]': {
 | |
|         WebkitAppearance: 'textfield',
 | |
|         outlineOffset: '-2px',
 | |
|       },
 | |
| 
 | |
|       '[type="search"]::-webkit-search-decoration': {
 | |
|         WebkitAppearance: 'none',
 | |
|       },
 | |
| 
 | |
|       '::-webkit-file-upload-button': {
 | |
|         WebkitAppearance: 'button',
 | |
|         font: 'inherit',
 | |
|       },
 | |
| 
 | |
|       details: {
 | |
|         display: 'block',
 | |
|       },
 | |
| 
 | |
|       summary: {
 | |
|         display: 'list-item',
 | |
|       },
 | |
| 
 | |
|       template: {
 | |
|         display: 'none',
 | |
|       },
 | |
| 
 | |
|       '[hidden]': {
 | |
|         display: 'none',
 | |
|       },
 | |
|     },
 | |
|     {
 | |
|       'abbr[title]': {
 | |
|         textDecoration: 'underline dotted',
 | |
|       },
 | |
|     },
 | |
|   ]
 | |
| }
 |