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 강좌 / width, height, min, max, box-sizing으로 크기 조절하기

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

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

CSS 강좌 / ul, ol 가운데 정렬하는 방법

CSS 강좌 / ul, ol 가운데 정렬하는 방법

목록 자체가 아니라 목록 안의 내용만 가운데 정렬할 때는 text-align 속성을 사용합니다. 목록 요소 자체를 가운데 정렬할 때는 margin 속성을 사용합니다. 만약 요소의 내용에 맞게 자동으로 크기가 정해지게 하고 싶으면 display 속성을 사용합니다.

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

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

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

CSS 강좌 / 큰 스타일시트 정리하기: 파일 구성·중첩·레이어

CSS 강좌 / 큰 스타일시트 정리하기: 파일 구성·중첩·레이어

역할별 CSS 파일 연결과 네이티브 중첩, 캐스케이드 레이어를 실행 가능한 작은 프로젝트로 익힙니다. 선택자 충돌을 비교하고 원래 설정으로 복원하는 실습을 제공합니다.

CSS 강좌 / Grid로 행과 열 만들기

CSS 강좌 / Grid로 행과 열 만들기

Grid의 격자선·트랙·셀과 fr 단위를 이해하고 명시적 행, 자동 행, 열을 가로지르는 배치를 전체 예제로 익힙니다. 긴 콘텐츠와 모바일에서 생기는 넘침도 비교합니다.

CSS 강좌 / 배경색과 배경 이미지 설정하기

CSS 강좌 / 배경색과 배경 이미지 설정하기

실습용 이미지를 내려받아 배경색과 배경 이미지 경로를 설정합니다. cover·contain의 잘림과 빈 공간, 반복과 위치를 비교하고 배경이 안 보일 때의 확인 순서를 설명합니다.

CSS / Tutorial / 삼각형 만드는 방법

CSS / Tutorial / 삼각형 만드는 방법

CSS의 border 속성으로 삼각형을 만들 수 있습니다. 여러 형태의 삼각형을 만들고, 그 삼각형을 회전하는 방법을 알아봅니다.

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

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

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

CSS 강좌 / 양쪽 배분(균등 분할) 정렬 방법

CSS 강좌 / 양쪽 배분(균등 분할) 정렬 방법

문단 정렬을 양끝으로 꽉차게 하는 경우가 있습니다. 한글에서는 배분 정렬, 워드에서는 균등 분할이라고 합니다. 일반적인 문단에서는 거의 사용하지 않고, 표에서 제목을 넣을 때 많이 사용합니다.

CSS / Tutorial / 마우스 호버 효과 / 서서히 길어지는 선 만드는 방법

CSS / Tutorial / 마우스 호버 효과 / 서서히 길어지는 선 만드는 방법

마우스를 올리면 선이 그려지는 효과를 만들어봅니다. 다음과 같이 사각형을 만듭니다. :before를 이용하여 선이 시작하는 위치를 정합니다. position 속성으로 선 위에 선을 그릴 수 있도록 설정합니다.