AD JB Toolbox 01

CSS / Tutorial / 마름모 만드는 방법

CSS로 삼각형을 만들 수 있다면 마름모는 쉽게 만들 수 있습니다. 삼각형을 두 개 붙이면 마름모가 되기 때문입니다. 마름모는 네 변의 길이가 같은 사각형이므로, 이등변삼각형 두 개를 붙이며 됩니다.

  • HTML 문서에 다음과 같이 내용이 없는 요소를 하나 넣습니다.
<div class="rhombus"></div>
  • 크기를 0으로 한 후, border 속성을 이용하여 이등변삼각형을 만듭니다.
  • position: relative;는 나머지 반쪽의 위치를 잡기 위해 넣은 것입니다.
.rhombus {
  width: 0px;
  height: 0px;
  border-right: 200px solid #666666;
  border-top: 100px solid transparent;
  border-bottom: 100px solid transparent;
  position: relative;
  left: -50%;
}

  • :after 선택자를 이용하여 삼각형을 하나 더 만듭니다.
  • position을 이용하여 위치를 잘 맞추면 마름모가 만들어집니다.
.rhombus:after {
  content: "";
  border-left: 200px solid #666666;
  border-top: 100px solid transparent;
  border-bottom: 100px solid transparent;
  position: absolute;
  top: -100px;
  left: 200px;
}

  • 전체 코드는 다음과 같습니다.
<!doctype html>
<html lang="ko">
  <head>
    <meta charset="utf-8">
    <title>CSS</title>
    <style>
      body {
        margin: 0px;
      }
      .container {
        display: flex;
        height: 100vh;
        justify-content: center;
        align-items: center;
      }
      .rhombus {
        width: 0px;
        height: 0px;
        border-right: 200px solid #666666;
        border-top: 100px solid transparent;
        border-bottom: 100px solid transparent;
        position: relative;
        left: -50%;
      }
      .rhombus:after {
        content: "";
        border-left: 200px solid #666666;
        border-top: 100px solid transparent;
        border-bottom: 100px solid transparent;
        position: absolute;
        top: -100px;
        left: 200px;
      }
    </style>
  </head>
  <body>
    <div class="container">
      <div class="item">
        <div class="rhombus"></div>
      </div>
    </div>
  </body>
</html>
같은 카테고리의 다른 글
CSS 강좌 / 표와 셀의 크기 조절하기

CSS 강좌 / 표와 셀의 크기 조절하기

표의 자동·고정 레이아웃, 30:70 열 너비, 긴 문자열의 영향을 같은 데이터로 비교합니다. 모바일 가로 스크롤과 키보드 이동을 확인하고 말줄임 원문을 보존하는 방법을 설명합니다.

CSS 강좌 / 링크 꾸미는 방법

CSS 강좌 / 링크 꾸미는 방법

링크의 기본 밑줄과 방문·호버·활성 상태를 설정하고 키보드 포커스를 표시합니다. 두 파일로 방문 이력과 Tab·Enter 동작을 확인하며 상태 규칙이 겹칠 때의 결과를 설명합니다.

CSS 강좌 / 글꼴, 글자 크기, 굵기, 줄 간격 설정하기

CSS 강좌 / 글꼴, 글자 크기, 굵기, 줄 간격 설정하기

글꼴·글자 크기·굵기·줄 간격을 설정하고 실제 사용된 글꼴을 확인하는 방법을 설명합니다. 단위 없는 line-height와 em 값의 상속 차이를 실행 가능한 예제로 비교합니다.

CSS 강좌 / width, height, min, max, box-sizing으로 크기 조절하기

CSS 강좌 / width, height, min, max, box-sizing으로 크기 조절하기

content-box와 border-box의 너비 계산, 최소·최대 크기, 고정 높이와 내용에 맞는 높이를 비교합니다. 화면과 글자 크기를 바꾸며 넘침을 진단하고 백분율 높이의 조건을 확인합니다.

CSS 강좌 / 관계 선택자와 가상 클래스로 요소 고르기

CSS 강좌 / 관계 선택자와 가상 클래스로 요소 고르기

자손·자식·인접 형제·일반 형제 선택자를 같은 문서 구조에서 비교합니다. hover·focus-visible·first-child·nth-child를 포함한 전체 예제와 구조를 바꿔 선택 결과를 확인하는 실습을 제공합니다.

CSS 강좌 / 표 꾸미기 / 배경색

CSS 강좌 / 표 꾸미기 / 배경색

배경색은 background-color 속성으로 만듭니다. table, tr, th, td, thead, tbody, tfoot에 적용할 수 있습니다. 다음 표를 기본으로 하고, 배경색을 여러 곳에 추가해보겠습니다.

CSS 강좌 / display와 기본 배치 흐름 이해하기

CSS 강좌 / display와 기본 배치 흐름 이해하기

block·inline·inline-block의 줄바꿈과 크기 적용을 같은 요소로 비교합니다. display: none과 visibility: hidden의 공간 차이, 인라인 이미지의 크기 예외를 실행하며 확인합니다.

CSS 강좌 / !important

CSS 강좌 / !important

CSS에서 !important는 특정 스타일 규칙이 다른 모든 스타일 규칙보다 우선 적용되도록 강제하는 데 사용됩니다. 이 키워드는 일반적인 스타일 우선 순위를 무시하고, 해당 스타일이 다른 어떤 스타일보다도 높은 우선순위를 가지도록 합니다.

CSS 강좌 / 이미지와 동영상 크기·비율 맞추기

CSS 강좌 / 이미지와 동영상 크기·비율 맞추기

이미지와 동영상의 원본 비율과 표시 영역을 구분하고 aspect-ratio·object-fit으로 크기와 잘림을 조절합니다. 같은 그림의 네 가지 비교와 재생 가능한 영상 예제로 결과를 확인합니다.

CSS 강좌 / position의 relative·absolute·fixed·sticky 차이

CSS 강좌 / position의 relative·absolute·fixed·sticky 차이

relative·absolute·fixed·sticky의 공간 유지, 위치 기준과 스크롤 차이를 비교합니다. 배지와 고정 버튼, 붙는 제목 예제를 실행하며 기준 부모와 동작하지 않는 원인을 확인합니다.