Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

HTML5 SVG를 화면 중앙에 배치하는 방법

HTML5 SVG를 화면 중앙에 배치하는 방법

SVG 요소를 화면 가운데 정렬하려면 CSS의 margin-left: auto;margin-right: auto; 속성을 활용하면 됩니다. 다만 SVG는 기본적으로 인라인(inline) 요소이기 때문에, 반드시 display: block;으로 지정해야 자동 마진이 정상적으로 작동한다는 점에 유의하세요.

CSS 코드

#svgelem {
    margin-left: auto;
    margin-right: auto;
    display: block;
}

코드 설명:

  • display: block; — SVG를 블록 레벨 요소로 변경하여 부모 요소의 가로 폭 전체를 차지하게 만듭니다.
  • margin-left: auto; margin-right: auto; — 좌우 여백을 자동으로 균등 분배하여 수평 중앙 정렬을 구현합니다.

SVG 예제 코드

다음은 중앙에 배치할 SVG입니다.

<svg id="svgelem" height="200" xmlns="https://www.w3.org/2000/svg">
    <circle id="redcircle" cx="50" cy="50" r="50" fill="red" />
</svg>

위 예제는 높이 200px의 SVG 캔버스 안에 빨간색 원(<circle>)을 하나 그리는 코드입니다. 앞서 작성한 CSS를 함께 적용하면 이 SVG가 페이지의 수평 중앙에 깔끔하게 배치됩니다.

응용: 수직·수평 완전 중앙 정렬하기

화면의 정중앙(수직과 수평 모두)에 SVG를 배치하고 싶다면 Flexbox를 사용하는 것이 가장 간단한 방법입니다.

body {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
    margin: 0;
}

justify-content: center;는 수평 방향, align-items: center;는 수직 방향 정렬을 담당하며, min-height: 100vh;를 지정하면 뷰포트 전체 높이를 기준으로 정확히 한가운데에 요소를 놓을 수 있습니다.