• 회원가입
  • 로그인
  • 구글아이디로 로그인

[box] CSS - aspect-ratio 속성 - 요소의 종횡비율(= 가로세로비율) 지정 (= aspect-ratio속성 = 애스펙트레이시오속성)

목차
  1. aspect-ratio 예제 - 요소의 종횡비 지정
  2. aspect-ratio 정의
  3. aspect-ratio 구문
  4. aspect-ratio 예제 - grid 시스템에서 width 미지정 경우
  5. aspect-ratio 예제 - 종횡비 비율별 요소 크기 변화 확인

 

aspect-ratio 예제 - 요소의 종횡비 지정

 

<style>

div {

    background-color: yellow;

    width: 100px;

    aspect-ratio: 3/2;

    display: flex;

    justify-content: center;

    align-items: center;

}

</style>


<div>홈짱닷컴</div>

 

결과보기

 

aspect-ratio 정의

 

요소의 종횡비율(= 가로세로비율) 지정.

 


 

1.

  • (aspect-ratio / width) 속성값 지정 시, height 속성값 자동 결정됨.
  • (너비/높이) 비율 유지하며 요소 크기 달라지는 반응형 레이아웃에 사용.

 

2.

  • 기본값: auto
  • 상속여부: X
  • 애니가능: O
  • CSS버전: CSS3
  • JS구문: object.style.aspectRatio="16/9";

 

3.

주요 최신 브라우저 모두 지원. (단, IE는 지원 X)

 

4. MDN aspect-ratio 예제보기

https://developer.mozilla.org/en-US/docs/Web/CSS/aspect-ratio

 

 

aspect-ratio 구문

 

selector {aspect-ratio: widthRatio/heightRatio|initial|inherit;}

 


[속성값]

 

widthRatio

필수. 가로 비율 나타내는 숫자. (※ 정수/소수 둘 다 가능.)

 

heightRatio

선택. 세로 비율 나타내는 숫자. (※ 미지정 시 기본값: 1)

 

initial

이 속성의 기본값으로 사용.

 

inherit

부모요소의 속성값을 상속.

 

 

aspect-ratio 예제 - grid 시스템에서 width 미지정 경우

 

<style>

#box {

  display: grid;

  width: 80%;

  margin: auto;

  border: 1px solid black;

  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));

  gap: 10px;

  padding: 10px;

}

  

#box > div {

  aspect-ratio: 1 / 0.8;

}


#box > div > img {

  width: 100%;

  height: 100%;

  object-fit: cover;

  object-position: center;

}

</style>


<div id="box">

  <div><img src="https://i.imgur.com/57sBeiJ.gif" alt="happy"></div>

  <div><img src="https://i.imgur.com/57sBeiJ.gif" alt="happy"></div>

  <div><img src="https://i.imgur.com/57sBeiJ.gif" alt="happy"></div>

  <div><img src="https://i.imgur.com/57sBeiJ.gif" alt="happy"></div>

</div>

 

결과보기

 

aspect-ratio 예제 - 종횡비 비율별 요소 크기 변화 확인

 

<style>

div {

    background-color: tomato;

    width: 100px;

    display: flex;

    justify-content: center;

    align-items: center;

    margin-bottom:10px;

}

.ar1 {aspect-ratio: 1/1;}

.ar2 {aspect-ratio: 1/2;}

.ar3 {aspect-ratio: 4/3;}

.ar4 {aspect-ratio: 16/9;}

.ar5 {aspect-ratio: 0.5;}

.ar6 {aspect-ratio: 1;}

.ar7 {aspect-ratio: 2;}

</style>


<div class="ar1">1/1</div>

<div class="ar2">1/2</div>

<div class="ar3">4/3</div>

<div class="ar4">16/9</div>

<div class="ar5">0.5</div>

<div class="ar6">1</div>

<div class="ar7">2</div>


결과보기

 


분류 제목
color CSS - RGBA , HSL , HSLA , opacity - (색상코드)
transform CSS - backface-visibility 속성 - 3D요소 뒷면 노출 여부. (= backface-vi…
border CSS - border-right-width 속성 - 테두리우측두께 (= 테두리우측너비 = 테두리오른쪽너비 …
image CSS - Image Text - (이미지 위에 텍스트 배치/띄우기)
selector CSS - :disabled 가상선택자 - 비활성화 된 요소 선택 (= 실행불능요소 = 작동불능요소 = :d…
transform CSS - perspective-origin 속성 - 3D요소 바라보는 위치 (= perspective-or…
border CSS - border-image-repeat 속성 - 테두리 이미지 반복할지 늘릴지 선택 (= 보더이미지리…
flex CSS - flex-flow 속성(C) ☆ - (flex-direction / flex-wrap) 속성 일괄…
func CSS - clamp() 함수 - 최소값과 최대값 사이의 중간값 반환. (= clamp함수 = 클램프함수)
background CSS - background-clip 속성 - 배경영역 (= background-clip속성 = 백그라운드…
image CSS - Image Modal - (Advanced) - (이미지 모달 띄우기 효과)
flex CSS - flex 속성(I) ☆ - flex-grow, flex-shrink, flex-basis 속성 일…
border CSS - border-top-width 속성 - 테두리상단두께 (= 테두리상단너비 = border-top-…
border CSS - border-top-color 속성 - 테두리상단색상 (= 테두리상단색깔 = border-top-…
selector CSS - :nth-of-type(n) 가상선택자 - 지정타입n번째 자식요소 (순서선택자,타입선택자, IE9…
border CSS - border-left-width 속성 - 테두리좌측두께 (= 테두리좌측너비 = 테두리왼쪽너비 = …
flex CSS - flex-grow 속성(I) ★ - 아이템 너비 증가 (= flex-grow속성 = 플렉스그로속성…
border CSS - border-bottom-color 속성 - 테두리하단색깔 (= 보더바텀컬러속성 = border-…
pagination CSS - 페이징 - 기본 스타일 (Simple Pagination)
border CSS - border-left-color 속성 - 테두리좌측색상 (= 테두리좌측색깔 = 테두리왼쪽색상 = …
15/27
목록
찾아주셔서 감사합니다. Since 2012