>  기사  >  웹 프론트엔드  >  CSS를 사용하여 채우기와 윤곽선이 모두 다른 육각형을 어떻게 만들 수 있나요?

CSS를 사용하여 채우기와 윤곽선이 모두 다른 육각형을 어떻게 만들 수 있나요?

DDD
DDD원래의
2024-11-01 10:46:02130검색

How can I create a hexagon with both a fill and an outline of different colors using CSS?

테두리와 채우기가 있는 육각형 모양

다음 코드는 단색 배경색과 투명한 테두리가 있는 육각형 모양을 만듭니다.

.hex:before {
    content: " ";
    width: 0; height: 0;
    border-bottom: 30px solid #6C6;
    border-left: 52px solid transparent;
    border-right: 52px solid transparent;
    position: absolute;
    top: -30px;
}

.hex {
    margin-top: 30px;
    width: 104px;
    height: 60px;
    background-color: #6C6;
    position: relative;
}

.hex:after {
    content: "";
    width: 0;
    position: absolute;
    bottom: -30px;
    border-top: 30px solid #6C6;
    border-left: 52px solid transparent;
    border-right: 52px solid transparent;
}

다양한 색상의 채우기와 윤곽선을 모두 사용하여 육각형을 만들려면 다른 접근 방식이 필요합니다. 다음은 계층화된 육각형을 사용하는 대체 방법입니다.

<code class="html"><div class="hex">
    <div class="hex inner">
        <div class="hex inner2"></div>
    </div>
</div></code>
<code class="css">.hex {
    margin-top: 70px;
    width: 208px;
    height: 120px;
    background: #6C6;
    position: relative;
}
.hex:before, .hex:after {
    content:"";
    border-left: 104px solid transparent;
    border-right: 104px solid transparent;
    position: absolute;
}
.hex:before {
    top: -59px;
    border-bottom: 60px solid #6C6;
}
.hex:after {
    bottom: -59px;
    border-top: 60px solid #6C6;
}

.hex.inner {
    background-color:blue;
    -webkit-transform: scale(.8, .8);
    -moz-transform: scale(.8, .8);
    transform: scale(.8, .8);
    z-index:1;
}
.hex.inner:before {
    border-bottom: 60px solid blue;
}
.hex.inner:after {
    border-top: 60px solid blue;
}

.hex.inner2 {
    background-color:red;
    -webkit-transform: scale(.8, .8);
    -moz-transform: scale(.8, .8);
    transform: scale(.8, .8);
    z-index:2;
}
.hex.inner2:before {
    border-bottom: 60px solid red;
}
.hex.inner2:after {
    border-top: 60px solid red;
}</code>

이 방법은 크기가 감소하고 색상이 다른 세 개의 육각형 레이어를 만들어 외곽선이 있는 채워진 육각형의 모양을 제공합니다.

위 내용은 CSS를 사용하여 채우기와 윤곽선이 모두 다른 육각형을 어떻게 만들 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.