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

HTML DOM borderImageSlice 속성 – 테두리 이미지 분할 방법 총정리

borderImageSlice 속성이란?

HTML DOM의 borderImageSlice 속성은 테두리 이미지(border-image)가 여러 영역으로 어떻게 나뉘어 적용되는지 정의하는 데 사용됩니다. 백분율(%), 숫자(number) 또는 전역(global) 값을 지정하여 테두리 이미지의 오프셋(offset)을 설정할 수 있습니다.

이 속성을 활용하면 하나의 이미지를 아홉 구역(모서리 4개, 변 4개, 중앙 1개)으로 분할하여 요소의 테두리를 자연스럽게 꾸밀 수 있습니다.

문법(Syntax)

borderImageSlice 속성을 설정하는 기본 문법은 다음과 같습니다.

object.style.borderImageSlice = "number|%|fill|initial|inherit";

값(Value) 설명

설명
number래스터(raster) 이미지에서는 픽셀(px) 단위를, 벡터(vector) 이미지에서는 벡터 좌표를 나타냅니다.
%이미지 크기를 기준으로 상대적인 수평·수직 오프셋을 지정합니다. 기본값은 100%입니다.
fill테두리 이미지의 가운데(middle) 부분을 잘라내지 않고 유지하여 요소 내부에도 표시합니다.
initial해당 속성을 기본(default) 값으로 되돌립니다.
inherit부모 요소의 속성 값을 그대로 상속받습니다.

예제(Example)

다음 예제는 버튼 클릭 시 div 요소의 borderImageSlice 값을 동적으로 변경하는 방법을 보여줍니다.

<!DOCTYPE html>
<html>
<head>
<style>
    div {
        width: 50%;
    }
    #b1 {
        border: 30px solid transparent;
        padding: 5px;
        font-size: 20px;
        border-image: url("https://www.tutorialspoint.com/xamarin/images/xamarin-mini-logo.jpg");
        border-image-slice: 60%;
    }
</style>
<script>
    function changeBorderSlice(){
        document.getElementById("b1").style.borderImageSlice = "10%";
        document.getElementById("Sample").innerHTML = "테두리 이미지 슬라이스 값이 변경되었습니다.";
    }
</script>
</head>
<body>
<div id="b1">div 안에 있는 샘플 텍스트입니다.</div>
<p>위 div의 테두리 이미지 슬라이스 값을 변경해 보세요…</p>
<button onclick="changeBorderSlice()">테두리 슬라이스 변경</button>
<p id="Sample"></p>
</body>
</html>

실행 결과(Output)

초기 화면에서는 테두리 이미지가 60% 슬라이스 값으로 적용된 것을 확인할 수 있습니다.

HTML DOM borderImageSlice 속성 – 테두리 이미지 분할 방법 총정리

'테두리 슬라이스 변경' 버튼을 클릭하면 슬라이스 값이 10%로 바뀌면서 테두리 이미지가 다르게 표시됩니다.

HTML DOM borderImageSlice 속성 – 테두리 이미지 분할 방법 총정리

이처럼 borderImageSlice 속성을 JavaScript와 함께 사용하면 사용자 인터랙션에 따라 테두리 이미지의 분할 방식을 실시간으로 조절할 수 있습니다.