EverGiver
반응형 웹 본문
728x90
반응형 웹 디자인이란
웹 요소를 화면 크기에 맞게 재배치하고 각 요소의 표시 방법만 바꾸어 사이트를 구현한다.
모바일 기기를 위한 뷰포트
- 뷰포트
: 스마트폰 화면에서 실제 내용이 표시되는 영역
뷰포트 지정하기
- 뷰포트는 <meta> 태그를 이용해 <head>와 </head> 태그 사이에 작성한다.
<meta name="viewport" content="속성1=값1", "속성2=값2", ....">
- 뷰포트 속성
종류 설명 사용 가능한 값 기본값 width 뷰포트 너비 device-width 또는 크기 브라우저 기본값 height 뷰포트 높이 device-height 또는 크기 브라우저 기본값 user-scalable 확대/축소 가능 여부 yes 또는 no
(yes는 1로, device-width와 device-height값은 10으로 간주)yes initial-scale 초기 확대/축소 값 1~10 1 <meta name="viewport" content="width=device-width", initial-scale=1">
<head> <meta charset="UTF-8"> <meta name="keyword" content="html의 구조"> <meta name="description" content="html의 구조를 알아봅시다"> <meta name="author" content="제작자"> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=2.0, minimum-scale=1.0, user-scalable=yes, shrink-to-fit=no"> <!--[if IE]> <meta http-equiv='X-UA-Compatible' content='IE=edge'> <![endif]--> <title>rsponsive</title> <link rel="stylesheet" href="#" type="text/css" > <!--[if it IE 9]> <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"> </script> <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> <![endif]--> </head>
- width=device-width
- 웹 페이지의 크기가 모니터가 스마트폰의 실제 액정 크기를 따라가도록 한다. - initial-scale=1
- 보이는 화면의 zoom up 정도를 1배율로 한다는 것이다.
▷이 값을 키우면 보여지는 화면이 좀 더 크게 보인다.
▷ 스마트폰에서 작은 사진을 두 손가락을 이용해 확대시키는 것과 비슷하다.
(스마트폰에서만 효과가 있다) - maximum-scale
- 확대할 수 있는 최대 비율 - minimum-scale
- 축소할 수 있는 최소 비율 - user-scalable
- 사용자가 배율을 확대 또는 축소 허용 여부를 설정한다.
▷ user-scalable=yes
: 크기 조절을 가능하게 설정 (기본값)
▷ user-scalable=no
: 크기 조절을 불가능하게 설정
(no로 설정하면 웹페이지가 input 영역에서 텍스트를 입력할 때 스크롤되는 것도 방지한다.) - shrink-to-fit=no
- 애플의 사파리 브라우저에만 영향을 미치는 속성이다.
▷ 사파리는 기본적으로 viewport의 크기보다 보여줘야 할 내용이 크면, 보여줘야할 내용을 줄여서라도 보여주는데, 이 과정을 방지하기 위해 코드를 작성한다. - 랜더링 모드 적용
- 현재의 웹 표준을 지키는 브라우저들을 기준으로 제작된 웹페이지들은 이 호환성 보기 버튼이 굳이 필요하지 않고, 해당 브라우저의 최신 렌더링 모드로 작동하게 강제할 필요가 생겼습니다. <meta> 태그를사용해서 어떤 렌더링 엔진을 사용할 것인지 전달할 수 있다.
<!--[if IE]> <meta http-equiv='X-UA-Compatible' content='IE=edge'> <![endif]-->
- 위의 content 값에 지정할 수 있는 값
- IE=5 : 관용 모드(quirks mode)로 지정된 DOCTYPE에 상관없이 IE5 렌더링 방식이 사용된다.
- IE=7 : IE7 표준모드로 지정된 DOCTYPE에 상관없이 IE7 표준 모드 렌더링 방식이 사용된다.
- IE=8 : IE8 표준모드로 지정된 DOCTYPE에 상관없이 IE8 표준모드로 렌더링 된다.
- IE=EmulateIE8 : IE8 에뮬레이션 모드로 지정된 DOCTYPE에 따라 IE8 표준모드나 관용 모드로 렌더링 된다.
- IE=edge : 최신 모드로 지정된 DOCTYPE에 상관없이 IE8 이상 버전에서 항상 최신 표준 모드로 렌더링 된다.
cf) 조건부 주석 옵션 참고
- ! : 아니다 (not)
- lt : 작다 (less than)
- lte : 작거나 같다 (less than equal)
- gt : 크다 (greater than)
- gte : 크거나 같다 (greater than equal)
- () : 우선 처리
- & : 그리고 (and)
- | : 또는 (or)
뷰포트 단위
- 뷰포트를 기준으로 하는 단위
단위 설명 vw(viewport width) 1vw는 뷰포트 너비의 1%와 같다. vh(viewport height) 1vh는 뷰포트 높이의 1%와 같다. vmin(viewport minimum) 뷰포트의 너비와 높이 중에 작은 값의 1%와 같다. vmax(viewport maximum) 뷰포트의 너비와 높이 중에서 큰 값의 1%와 같다.
728x90
'Front-End (웹) > 반응형 웹과 미디어 쿼리' 카테고리의 다른 글
CSS 그리드 레이아웃 (0) | 2022.01.12 |
---|---|
플렉스 박스 레이아웃 (0) | 2022.01.12 |
그리드 레이아웃 (0) | 2022.01.11 |
미디어 쿼리 알아보기 (0) | 2022.01.11 |
Comments