媒体查询
当我们为页面添加响应式布局时,就可以使用媒体查询。它是 CSS3 中的一个特性,使用关键字 @media
。
语法
在 CSS 使用 @media{}
,它有几个媒体类型(即所使用的设备)可选值:
all
应用于所有设备。
print
适用于打印设备。
screen
适用于带屏幕的设备。
speech
适用于屏幕阅读器。
@media all,print,screen {
body {
background-color: #f60;
}
}
only
主要是用来兼容老版本的浏览器,默认就有 only。
@media only screen {
body {
background-color: #f60;
}
}
媒体特性
/* 当视口宽度为 500px 时 */
@media (width:500px) {
body {
background-color: #f60;
}
}
/* 视口最大宽度为 800px (小于等于800px) 时 */
@media (max-width:800px) {
body {
background-color: pink;
}
}
/* 视口最小宽度为 800px (大于等于800px) 时 */
@media (min-width:800px) {
body {
background-color: greenyellow;
}
}
当网页在某个点发生页面布局上的变化时,我们称这个点为断点。一般常用网页的断点有 768px、992px、1200px。
/* 屏幕视口在 768px 和 992px 之间 */
@media only screen and (min-width:768px) and (max-width:992px) {
body {
background-color: greenyellow;
}
}
也可以加上 not
来表示非。
/* 屏幕视口不在 768px 和 992px 之间 */
@media not screen and (min-width:768px) and (max-width:992px) {
body {
background-color: greenyellow;
}
}