【CSS】媒体(媒介 / media)查询

媒体查询(Media Queries)是 CSS3 中引入的一种技术,用于根据设备的特性和属性,为不同的媒体类型提供不同的样式规则。媒体查询使得我们可以根据设备的屏幕尺寸、分辨率、屏幕方向、设备类型等条件来适应不同的设备和媒体类型。

媒体查询的语法如下:

java 复制代码
@media media-type and (media-feature) {
  // 样式规则
}

media-type 表示媒体类型,比如 screen(屏幕)、print(打印)等,而 media-feature 是媒体特性,比如 width(宽度)、height(高度)、orientation(方向)等。

未指明类型为默认值 all。

基本使用

  1. 根据屏幕宽度进行样式调整:
css 复制代码
@media screen and (max-width: 600px) {
  // 当屏幕宽度小于等于 600px 时应用的样式
}
  1. 根据屏幕方向调整样式:
css 复制代码
@media screen and (orientation: landscape) {
  // 当屏幕为横向应用的样式
}
  1. 根据设备类型调整样式:
css 复制代码
@media handheld {
  // 当设备为手持设备时应用的样式
}

媒体查询还支持逻辑操作符,如 notandor,可以将多个媒体特性进行组合,以更精确地匹配目标设备。

例如:

css 复制代码
@media screen and (min-width: 768px) and (max-width: 1024px) {
  // 当屏幕宽度在 768px 到 1024px 之间时应用的样式
}

引用方法

  1. link: 使用 <link> 标签将外部样式表文件链接到 HTML 文件中:

    html 复制代码
    <link rel="stylesheet" href="styles.css" media="screen">
  2. xml:

    html 复制代码
     <? xml-stylesheet rel="stylesheet" media="screen" href="style.css"?>
  3. @import

    html 复制代码
    @import url('./index.css') screen
  4. @media

    css 复制代码
    @media screen {
        /* 具体样式 */
    }
相关推荐
恋猫de小郭3 小时前
Android 17 + OkHttp 5.5.0 ,全新 ECH 下你的 HTTPS 域名可以请求时被安全隐藏
android·前端·flutter
后除3 小时前
从零到一: 创建一个 TypeScript 7 项目
前端·webpack·typescript
lerhxx3 小时前
我用 R3F 手搓了一个能走进去的 3D 迷宫简历(上):从选型架构到迷宫生成算法
前端·javascript·three.js
还有多久拿退休金3 小时前
不调多模态,纯文本大模型如何给系统操作配上截图
前端·llm·aigc
hunterandroid4 小时前
HarmonyOS WebSocket 实战:断线重连、心跳保活与连接状态机设计
前端
hunterandroid4 小时前
StateFlow 与 SharedFlow 的边界:状态与事件的正确建模
android·前端
心念科技4 小时前
1、搜索表单 xnSearch(基于:心念后台,后端 Java 21 + Spring Boot 4 + Spring Cloud,前端提供 ReactVue3+TS、Vue3+JS、Vue2+JS
前端
计算机魔术师5 小时前
Dwarkesh Patel 对 OpenAI/Hugging Face 事件的爆款解读被指危险误导
前端
自进化Agent智能体6 小时前
Hermes GitHub PR 审查 —— 自动化代码评审
前端
涛涛ing8 小时前
OpenAI Astra 泄露:零样本生成 3D 网页,前端开发者慌了吗?
前端