Center

Center is a layout component that centers its child within itself.

Import

import { Center, Square, Circle } from '@hoverinc/design-system-react-web'
  • Center: centers its child given width and height
  • Square: centers its child given size (width and height)
  • Circle: a Square with round border-radius
  • AbsoluteCenter: centers relative to its parent by given axis

Usage

Put any child element inside it, give it any width or/and height, it'll ensure the child is centered.

<Center bg='tomato' h='100px' color='white'> This is the Center </Center>

With icons

Center can be used to create frames around icons or numbers.

<HStack> <Center w='40px' h='40px' bg='tomato' color='white'> <PhoneIcon /> </Center> <Center w='40px' h='40px' bg='tomato' color='white'> <Box as='span' fontWeight='bold' fontSize='lg'> 1 </Box> </Center> </HStack>

Square and Circle

To reduce boilerplate, we've exported Square and Circle components that automatically centers its children given the size.

<HStack> <Circle size='40px' bg='tomato' color='white'> <PhoneIcon /> </Circle> <Square size='40px' bg='purple.700' color='white'> <PhoneIcon /> </Square> </HStack>

AbsoluteCenter

Used to horizontally and vertically center an element relative to its parent dimensions. Uses the position: absolute strategy. Takes axis prop which is could be "both" (by default), "horizontal" or "vertical".

<Box position='relative' h='100px'> <AbsoluteCenter bg='tomato' p='4' color='white' axis='both'> <PhoneIcon /> </AbsoluteCenter> </Box>