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

[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>


결과보기

 


분류 제목
transition CSS - transition-timing-function 속성 - 트랜지션 속도변경곡선 (= transit…
image CSS - object-position 속성 - <img>/<video>가 "자체 콘텐츠 상자" 내부의 x/…
pagination CSS - 페이징 - (이전페이지/다음페이지/지정페이지) 이동 링크 버튼
func CSS - 함수 종류
selector CSS - :only-of-type 가상선택자 - 타입유일 자식요소 (= 유일타입 자식요소) [유일선택자|타…
css CSS - 화면분할 좌측사이드 영역 스크롤 고정 (= 이미지/메뉴 사이드 고정)
transition CSS - transition-duration 속성 ★ - 트랜지션 완료에 걸리는 시간 (= transiti…
image CSS - Polaroid Images / Cards - (폴라로이드 이미지)
selector CSS - .class 클래스선택자 ★
pagination CSS - 페이징 - 테두리 추가 (Bordered Pagination)
background CSS - Multi Background 구문 - 한번에 여러 배경 속성값 사용
intro CSS - CSS3 입문
selector CSS - :root 가상선택자 - 웹문서root요소 선택. (= 루트선택자, IE9)
css CSS - 자식요소 앞에 순번 붙이기 (= 번호 매기기 = 색인번호 추가 = 요소 카운팅)
transition CSS - transition-delay 속성 - 트랜지션 시작 대기 시간 (= transition-dela…
image CSS - Rounded Images (둥근/동그란 이미지 만들기 = 이미지 테두리 둥글게/동그랗게) - I…
border CSS - border-bottom-right-radius 속성 - 테두리 하단 오른쪽 모서리 둥글게 (= …
image CSS - Image Filter - (이미지 필터 - 흑백/흐림 효과)
selector CSS - :in-range 가상선택자 - 지정범위안값 갖는 요소 선택 (= 인레인지선택자 IE13)
column CSS - columns 속성 - (컬럼최소너비/컬럼개수) 일괄 지정 (= columns속성 = 컬럼즈속성)
13/27
목록
찾아주셔서 감사합니다. Since 2012