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.
46 lines
986 B
46 lines
986 B
// @flow
|
|
import type { Styles } from '../types/style'
|
|
|
|
/**
|
|
* CSS to hide content visually but remain accessible to screen readers.
|
|
* from [HTML5 Boilerplate](https://github.com/h5bp/html5-boilerplate/blob/9a176f57af1cfe8ec70300da4621fb9b07e5fa31/src/css/main.css#L121)
|
|
*
|
|
* @example
|
|
* // Styles as object usage
|
|
* const styles = {
|
|
* ...hideVisually(),
|
|
* }
|
|
*
|
|
* // styled-components usage
|
|
* const div = styled.div`
|
|
* ${hideVisually()};
|
|
* `
|
|
*
|
|
* // CSS as JS Output
|
|
*
|
|
* 'div': {
|
|
* 'border': '0',
|
|
* 'clip': 'rect(0 0 0 0)',
|
|
* 'height': '1px',
|
|
* 'margin': '-1px',
|
|
* 'overflow': 'hidden',
|
|
* 'padding': '0',
|
|
* 'position': 'absolute',
|
|
* 'whiteSpace': 'nowrap',
|
|
* 'width': '1px',
|
|
* }
|
|
*/
|
|
export default function hideVisually(): Styles {
|
|
return {
|
|
border: '0',
|
|
clip: 'rect(0 0 0 0)',
|
|
height: '1px',
|
|
margin: '-1px',
|
|
overflow: 'hidden',
|
|
padding: '0',
|
|
position: 'absolute',
|
|
whiteSpace: 'nowrap',
|
|
width: '1px',
|
|
}
|
|
}
|