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

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


결과보기

 


분류 제목
css CSS - 이미지 세로 나열 (= 수직 정렬) 방법/경우/원인/이유
flex CSS - order 속성(I) - 아이템 순서 재조정 (= order속성 = 오더속성, IE11) ※ 플렉…
func CSS - rgb() 함수 - (빨강,녹색,파랑)으로 색상 정의. (= rgb함수 = 알지비함수)
list CSS - list-style 속성 ★ - 리스트 스타일 일괄 (= 리스트마커 = list-style속성 =…
func CSS - rgba() 함수 ★ - (빨강,녹색,파랑,불투명도)으로 색상 정의. (= rgba함수 = 알지비…
intro CSS - 정의・장점・구문・초기화 + 주석
animation CSS - animation-duration 속성 - 애니지속시간 (= 애니완료소요시간 = 움직임완료소요시간…
func CSS - hsla() 함수 - (색조, 채도, 밝기, 불투명도)로 색상 정의. (= hsla함수 = 에이치…
css CSS - zoom 속성 - 요소 확대 (= zoom속성 = 줌속성) ※ IE 하위 브라우저(예: IE6, …
flex CSS - align-self 속성(I) ★ - 교차축 기준으로, 아이템 자체 정렬. (= align-sel…
css CSS - 블럭요소 수직중앙정렬/수평중앙정렬 (= 가로가운데정렬) (IE9) ★★★★★ (HT - Cent…
transform CSS - transform 속성 ★ - 요소 (회전/비틀기/크기확대) 변환 + 마우스 허버 시 줌효과 (=…
selector CSS - ::after 가상선택자 ★ - 요소 뒤에 내용삽입 (= ::after선택자 = 에프터선택자/애프…
text CSS - text-emphasis 속성 - 텍스트 강조마크의 '모먕/색깔' 일괄 지정 (= 텍스트 글자 위…
box CSS - margin-top 속성 - 바깥여백상단 (= margin-top속성 = 마진탑속성 = 마진톱속성…
responsive CSS - RES Video - (반응형 동영상)
selector CSS - element~element 형제선택자 ★★ - 지정요소 뒤의 모든 특정형제요소 (요소선택자군…
border CSS - border-top 속성 - 테두리상단일괄 (= border-top속성 = 보더탑속성 / 보더톱속…
table CSS - table-layout 속성 ★★★ - 테이블 셀, 행 및 열을 레이아웃 (= table-layo…
border CSS - border-style 속성 ★ - 테두리모양일괄 (= border-style속성 = 보더스타일속…
21/27
목록
찾아주셔서 감사합니다. Since 2012