如何使用 JavaScript 进行媒体查询
使用 JavaScript 进行媒体查询
媒体查询在 CSS3 中引入,是响应式 Web 设计的关键要素之一。媒体查询用于确定视口的宽度和高度,以使网页在所有设备(台式机、笔记本电脑、平板电脑、手机等)上都显示得很好。
window.matchMedia() 方法返回一个 MediaQueryList 对象,该对象表示指定的 CSS 媒体查询字符串的结果。matchMedia() 方法的值可以是 CSS @media 规则的任何媒体特征,例如 min-height、min-width、orientation 等。
实例
如果视口的宽度小于或等于700像素,则将背景色更改为黄色。如果宽度大于700,则将其更改为粉红色:
function myFunction(x) {
if (x.matches) { // 如果媒体查询匹配If media query matches
document.body.style.backgroundColor = "yellow";
} else {
document.body.style.backgroundColor = "pink";
}
}
// 创建 MediaQueryList 对象
var x = window.matchMedia("(max-width: 700px)")
// 在运行时调用监听器函数
myFunction(x);
// 在状态更改时附加监听器函数
x.addEventListener("change", function() {
myFunction(x);
});
相关页面
教程:CSS 媒体查询
教程:响应式网页设计