미디어쿼리: 반응형 웹사이트를 만들 때 사용하는 CSS 코드. 사용하는 기기에 맞게 자연스러운 변화를 줌.
@media (min-width: 200px) and (max-width: 767px) {
.pc {
color: blue;
font-size: 20px;
background-color: yellow;
}
}
위와 같이 사용하는 기기의 width값에 맞춰서 각각의 css를 작성해주면 된다.
미디어쿼리 사용 시 주의점
미디어쿼리 안에 작성하지 않은 속성은, 미디어쿼리 밖에 작성한 코드를 상속하기 때문에 양쪽의 코드를 확인해가며 변경을 해줘야한다.
미디어쿼리 사용 시 html 파일의 head 태그 안에
<meta name="viewport" content="width=device-width, initial-scale=1.0">
위와 같은 태그를 입력해줘야한다.
viewport: 웹사이트에 접속하는 기기의 화면
width=device-width: 웹사이트의 width값은 기기의 width값으로 적용
initial-scale=1.0: 비율은 1.0을 유지
※ 해당 meta 태그 참고 사이트
https://www.w3schools.com/css/css_rwd_viewport.asp
※ 디바이스 기기의 명확한 width값을 알고싶을 때 참고하기 좋은 사이트
https://css-tricks.com/snippets/css/media-queries-for-standard-devices/
작업한 페이지를 모바일 버전으로 확인하고 싶다면
미디어쿼리 실무 팁
display 속성을 사용해서 원하는 정보를 원하는 기기에 맞춰서 표시할 수 있다.
.pc {
color: red;
font-size: 50px;
background-color: pink;
}
.mobile {
display: none;
}
@media (min-width: 320px) and (max-width: 767px) {
.pc {
display: none;
}
.mobile {
display: block;
}
}
위와 같이 미디어쿼리 밖에선 모바일 버전 오브젝트의 display 값을 none으로, 미디어쿼리 안에 작성하는 코드엔 pc 버전 오브젝트에 display값을 none으로, 모바일 버전 오브젝트에 원래의 속성과 일치하는 display 값을 주면 된다.
그렇지만 그렇게 좋은 방식이라고 보기는 어렵기 때문에 기획단계부터 각 디바이스를 모두 고려해서 컨텐츠를 작성하는 게 중요하다.
※ 일반적으로 모바일 버전의 웹사이트가 pc 버전의 웹사이트보다 정보가 적고 단순하기 때문에, 반응형 웹사이트 작업 시 모바일 버전 기획을 먼저 하는 것이 좋을 수도 있다.
기초적인 미디어쿼리만으로는 특별히 어려운 내용이 없었다. 예제가 단순했기 때문인 것 같다.
미디어쿼리 사용 시 알려주신 주의사항을 잊지 않도록 유념해야겠다.
미디어쿼리의 사용 방법 자체는 그렇게 어렵지 않은데, 아마 코드가 길어지면 분명히 헷갈리고 실수하기 쉬워질 것 같다. 다른 반응형 사이트를 참고해보면서 실제 웹사이트에는 미디어쿼리가 어떻게 적용됐는지 많이 살펴보는 게 좋겠다.