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

[API_MediaQueryList] JS - window.MediaQueryList 객체 - 미디어쿼리 정보 저장 (= window.MediaQueryList객체 = 윈도우미디어쿼리리스트객체) ※ 화면 해상도 크기별 다른 텍스트 표시

목차
  1. window.MediaQueryList 객체 정의
  2. window.MediaQueryList 객체의 속성
  3. window.MediaQueryList 객체의 메서드
  4. Media Queries 정의
  5. Media Types 종류
  6. Media Features 종류

 

window.MediaQueryList 객체 정의

 

  • MediaQueryList 객체는 미디어 쿼리에 대한 정보를 저장.
  • MediaQueryList 객체는 window 객체의 속성에 해당.
  • MediaQueryList 객체는 window.matchMedia() (또는, matchMedia())로 접근함.

 


[예제1] - window.matchMedia()로 접근 경우

 

<p id="demo"></p>


<script>

let text;


function updateText() {

  if (window.matchMedia("(max-width: 700px)").matches) {    

    text = "700px 이하 화면";

  } else {

    text = "700px 초과 화면";

  }

  document.getElementById("demo").innerHTML = text;

}


// 초기화할 때 한 번 실행

updateText();


// 화면 크기 변경 시 실행되는 이벤트 핸들러 추가

window.addEventListener('resize', updateText);

</script>

 

결과보기


[예제2] - matchMedia()로 접근 경우

 

<p id="demo"></p>


<script>

let text;


function updateText() {

  if (matchMedia("(max-width: 700px)").matches) {    

    text = "700px 이하 화면";

  } else {

    text = "700px 초과 화면";

  }

  document.getElementById("demo").innerHTML = text;

}


// 초기화할 때 한 번 실행

updateText();


// 화면 크기 변경 시 실행되는 이벤트 핸들러 추가

window.addEventListener('resize', updateText);

</script>


결과보기

 

window.MediaQueryList 객체의 속성

 

  • matches 속성 - (boolean 타입값). 문서가 쿼리와 일치하면 true 반환. 그렇지 않으면 false 반환. 
  • media 속성 - (string 타입값).  미디어 쿼리 리스트

 

 

window.MediaQueryList 객체의 메서드

 

  • addListener() 메서드 - 미디어 쿼리의 평가 결과가 변경될 때마다 실행되는 새로운 리스너 함수를 추가함.
  • removeListener() 메서드 - 미디어 쿼리 목록에서 이전에 추가된 리스너 함수를 제거함. 지정된 리스너가 이미 목록에 없으면 아무 작업도 수행하지 않음.

 

 

Media Queries 정의

 

matchMedia() 메서드의 미디어 쿼리는 CSS의 @media 규칙의  미디어 특성 중 하나일 수 있음. (예) min-height, min-width, orientation 등

 

 

Media Types 종류

 

  • all: 기본값. 모든 미디어 타입 장치에 사용됨.
  • print: 프린터에 사용됨.
  • screen: 컴퓨터 화면, 태블릿, 스마트폰 등에 사용됨.
  • speech: 페이지를 음성으로 읽어주는 스크린 리더에 사용됨.

 

 

Media Features 종류

 

  • any-hover: 사용 가능한 입력 메커니즘이 요소 위에 마우스를 올리도록 허용하는지 여부
  • any-pointer: 사용 가능한 입력 메커니즘이 포인팅 장치인지, 그리고 정확성이 어떤지 여부
  • aspect-ratio: 뷰포트의 너비와 높이 사이의 비율
  • color: 출력 장치 당 색상 구성 요소당 비트 수
  • color-gamut: 사용자 에이전트와 출력 장치에서 지원되는 색상의 대략적인 범위
  • color-index: 장치가 표시할 수 있는 색상 수
  • grid: 장치가 그리드인지 비트맵인지 여부
  • height: 뷰포트 높이
  • hover: 주요 입력 메커니즘이 요소 위에 마우스를 올리도록 허용하는지 여부
  • inverted-colors: 브라우저 또는 기본 OS가 색상을 반전시키는지 여부
  • light-level: 현재 주변 광량 레벨
  • max-aspect-ratio: 디스플레이 영역의 너비와 높이 사이의 최대 비율
  • max-color: 출력 장치 당 색상 구성 요소당 최대 비트 수
  • max-color-index: 장치가 표시할 수 있는 최대 색상 수
  • max-height: 브라우저 창과 같은 디스플레이 영역의 최대 높이
  • max-monochrome: 단색(그레이스케일) 장치에서 "색상" 당 비트 수의 최대값
  • max-resolution: dpi 또는 dpcm을 사용하여 장치의 최대 해상도
  • max-width: 브라우저 창과 같은 디스플레이 영역의 최대 너비
  • min-aspect-ratio: 디스플레이 영역의 너비와 높이 사이의 최소 비율
  • min-color: 출력 장치 당 색상 구성 요소당 최소 비트 수
  • min-color-index: 장치가 표시할 수 있는 최소 색상 수
  • min-height: 브라우저 창과 같은 디스플레이 영역의 최소 높이
  • min-monochrome: 단색(그레이스케일) 장치에서 "색상" 당 비트 수의 최소값
  • min-resolution: dpi 또는 dpcm을 사용하여 장치의 최소 해상도
  • min-width: 브라우저 창과 같은 디스플레이 영역의 최소 너비
  • monochrome: 단색(그레이스케일) 장치에서 "색상" 당 비트 수
  • orientation: 뷰포트의 방향(가로 또는 세로 모드)
  • overflow-block: 블록 축을 따라 뷰포트를 넘어가는 콘텐츠를 출력 장치가 어떻게 처리하는지
  • overflow-inline: 인라인 축을 따라 뷰포트를 넘어가는 콘텐츠를 스크롤할 수 있는지 여부
  • pointer: 주요 입력 메커니즘이 포인팅 장치인지, 그리고 정확성이 어떤지
  • resolution: dpi 또는 dpcm을 사용하여 출력 장치의 해상도
  • scan: 출력 장치의 스캔 과정
  • scripting: 스크립팅(예: JavaScript) 사용 가능 여부
  • update: 출력 장치가 콘텐츠의 모양을 얼마나 빨리 변경할 수 있는지 여부
  • width: 뷰포트 너비

 


방문 감사합니다. (즐겨찾기 등록: Ctrl + D)

분류 제목
게시물이 없습니다.
89/67
목록
찾아주셔서 감사합니다. Since 2012