<p dir="ltr | rtl">
global attribute
중 dir
로 설정이 가능ltr
구성의 웹페이지에서 아랍국가의 언어를 사용하게 될 경우 웹 사이트의 locale
값을 확인하여 최상위 컴포넌트의 dir
을 설정해주는 방향으로 진행dir
의 값은 최상위 컴포넌트 혹은 Context, Redux 등을 사용하여 Global State로 관리하는 것을 추천Nextjs 예
const Layout = ({children}) => {
const router = useRouter()
const dir = useMemo(
() => router.locale === 'ar' ? 'rtl' : 'ltr'
,[router])
return (
<div dir={dir}>
{children}
</div>
)
}
flex
, grid
dir
의 설정은 CSS의 기본 설정의 영향을 줌display: flex
를 사용할 때, justify-content
의 정렬 또힌 반전되어 적용display: grid
를 사용할 때, 정렬 또힌 반전되어 적용absolute
display: absolute
은 dir
의 영향을 받지 않는다. dir
의 사용 시 특정 locale
값의 따라 UI 가 깨질 수 있는 부분에 대해 주의해야 함absolute
포지셔닝으로 되어있는 컴포넌트 내부에서 flex
설정을 해주면 간단하게 해결이 가능