zhcn 编程语言 Web相关 JSON 非公開: CSS媒体查询综合分析(@media)

CSS媒体查询综合分析(@media)

随着移动设备的迅速普及,用户不仅在传统计算机系统上查看网页内容,越来越多的用户使用智能手机、平板电脑或其他各种尺寸的设备来查看网页内容。必须使用经验和媒体查询。

媒体查询是CSS样式表最重要的功能之一,所谓媒体查询是根据不同的设备(电脑、手机、平板电脑、盲文设备等)来区分的。事物。然后为每个定义不同的 CSS 样式。媒体查询可以让 CSS 在不同设备上或同一设备上不同条件下更准确地工作,因此所有用户都可以获得更好的用户体验。

1. 媒体类型

媒体类型用于指示设备的类别。 CSS提供了几个关键字来代表不同的媒体类型,如下表所示。

媒体类型解释
all显示所有媒体设备
aural显示语音和音频合成器(助听器)。
braille代表为视障人士提供的盲文触觉反馈设备
embossed代表为视障人士提供盲文打印机
handheld表示小型手持设备,例如手机或平板电脑
print表示打印机
projection表示投影设备
screen显示电脑显示器
tty表示使用固定密度字母网格的媒体,例如打字机和终端设备
tv表示电视类型设备

2. 媒体特点

除了特定类型之外,还可以使用一些属性来描述设备的特定特性,例如宽度、高度和分辨率,如下表所示。

价值解释
aspect-ratio输出设备页面显示区域的长宽比
color输出设备上每个像素的位值,常见的有8位、16位、32位。如果设备不支持彩色输出,则该值为 0。
color-index输出设备的颜色查找表中的条目数。如果没有使用颜色查找表,则该值为 0。
device-aspect-ratio输出设备宽高比
device-height输出设备屏幕的显示高度
device-width输出设备屏幕显示宽度
grid查询输出设备使用的是网格屏还是点阵屏
height页面可见区域高度
max-aspect-ratio输出设备屏幕可见区域宽度与高度的最大比率
max-color输出设备每像素的最大位值
max-color-index输出设备颜色查找表中的最大条目数
max-device-aspect-ratio输出设备屏幕可见区域宽度与高度的最大比率
max-device-height输出设备屏幕可见区域的最大高度
max-device-width输出设备屏幕最大显示宽度
max-height页面可见区域最大高度
max-monochrome输出设备的单色帧缓冲区​​的每个像素的最大位深度。如果设备没有黑白屏幕,则该值为 0。
max-resolution设备最大分辨率
max-width页面可见区域最大宽度
min-aspect-ratio输出设备屏幕可见区域宽度和高度的最小比例
min-color输出设备每像素的最小位数
min-color-index输出设备颜色查找表中的最小条目数
min-device-aspect-ratio输出设备屏幕显示区域最小宽高比
min-device-width输出设备屏幕最小显示宽度
min-device-height输出设备屏幕最小显示高度
min-height页面可见区域最小高度
min-monochrome输出设备的单色帧缓冲区​​的每像素的最小位深度。如果设备没有黑白屏幕,则该值为 0。
min-resolution设备最小分辨率
min-width页面可见区域最小宽度
monochrome输出设备的单色帧缓冲区​​的每像素位深度。如果设备没有黑白屏幕,则该值为 0。
orientation页面可视区域旋转方向
resolution设备分辨率。如:96dpi、300dpi、118dpcm
scan电视设备扫描流程
width页面可见区域宽度

3. 逻辑运算符

逻辑运算符包括 not、and、and only。可以使用逻辑运算符创建复杂的媒体查询。您还可以通过用逗号分隔多个媒体查询将它们合并到一个规则中。

  • and:用于将多个媒体查询合并为一个媒体查询,如果每个查询规则都为 true,则该媒体查询也为 true。此外,and 运算符还可以组合媒体特征和媒体类型。
  • not:用于否定媒体查询。如果查询规则不为 true,则返回 true,否则返回 false。如果使用 not 运算符,则还必须指定媒体类型。
  • only:仅当整个查询匹配时才启用。如果使用唯一运算符,则还必须指定媒体类型。
4. 定义媒体查询

目前,您可以通过两种方式定义媒体查询:

  • 使用@media或@import规则在样式表中指定相应的设备类型。
  • 使用 media 属性在 <style>、<link>、<source> 或其他 HTML 元素中指定特定设备类型。

1)@媒体

@media 允许您指定一系列媒体查询和 CSS 样式块。仅当媒体查询与所使用的设备匹配时,指定的 CSS 样式才会应用于文档。示例代码如下。

 /* 992 ピクセル以下の画面では、背景色を青に設定 */
@media screen and (max-width: 992px) {
  body {
    background-color: blue;
  }
}

/* 600 ピクセル以下の画面では、背景色をオリーブに設定 */
@media screen and (max-width: 600px) {
  body {
    background-color: olive;
  }
} 

2)@导入

使用@import导入指定的外部样式文件并指定目标媒体类型。示例代码如下。

 @import url("css/screen.css") screen; 
@import url("css/print.css") print;
body { background: #f5f5f5; line-height: 1.2; }

注意:所有@import语句必须放在样式表的开头,样式表中定义的样式将覆盖导入的外部样式表中任何冲突的样式。

3)媒体属性

您还可以在标签的媒体属性中定义媒体查询,例如 <style>、<link> 和 <source>。示例代码如下。

 /* ページの幅が900ピクセル以上の場合、このスタイルを適用する */
<link rel="stylesheet" media="screen and (min-width: 900px)" href="widescreen.css">
/* ページの幅が600ピクセル以下の場合、このスタイルを適用する */
<link rel="stylesheet" media="screen and (max-width: 600px)" href="smallscreen.css"> 

提示:您还可以在媒体属性中指定多种媒体类型。用逗号分隔每种媒体类型,例如 media=”screen, print”。

《CSS媒体查询综合分析(@media)》浅显易懂讲解!您必须观看的最佳 2 个视频

19. Media queries?
https://www.youtube.com/watch?v=joTJwyP1ZsA&pp=ygU_IENTUyDjg6Hjg4fjgqPjgqIg44Kv44Ko44Oq44Gu5YyF5ous55qE44Gq5YiG5p6QIChAbWVkaWEpJmhsPUpB
レスポンシブデザインって何?media query(メディアクエリ)のmax-widthとmin-widthの違いを理解して、スマホ対応しよう😁
https://www.youtube.com/watch?v=LAvi0IXXKZI&pp=ygU_IENTUyDjg6Hjg4fjgqPjgqIg44Kv44Ko44Oq44Gu5YyF5ous55qE44Gq5YiG5p6QIChAbWVkaWEpJmhsPUpB
随着移动设备的迅速普及,用户不仅在传统计算机系统上查看网页内容,越来越多的用户使用智能手机、平板电脑或其他各种尺寸的设备来查看网页内容。必须使用经验和媒体查询。

媒体查询是CSS样式表最重要的功能之一,所谓媒体查询是根据不同的设备(电脑、手机、平板电脑、盲文设备等)来区分的。事物。然后为每个定义不同的 CSS 样式。媒体查询可以让 CSS 在不同设备上或同一设备上不同条件下更准确地工作,因此所有用户都可以获得更好的用户体验。

1. 媒体类型

媒体类型用于指示设备的类别。 CSS提供了几个关键字来代表不同的媒体类型,如下表所示。

媒体类型解释
all显示所有媒体设备
aural显示语音和音频合成器(助听器)。
braille代表为视障人士提供的盲文触觉反馈设备
embossed代表为视障人士提供盲文打印机
handheld表示小型手持设备,例如手机或平板电脑
print表示打印机
projection表示投影设备
screen显示电脑显示器
tty表示使用固定密度字母网格的媒体,例如打字机和终端设备
tv表示电视类型设备

2. 媒体特点

除了特定类型之外,还可以使用一些属性来描述设备的特定特性,例如宽度、高度和分辨率,如下表所示。

价值解释
aspect-ratio输出设备页面显示区域的长宽比
color输出设备上每个像素的位值,常见的有8位、16位、32位。如果设备不支持彩色输出,则该值为 0。
color-index输出设备的颜色查找表中的条目数。如果没有使用颜色查找表,则该值为 0。
device-aspect-ratio输出设备宽高比
device-height输出设备屏幕的显示高度
device-width输出设备屏幕显示宽度
grid查询输出设备使用的是网格屏还是点阵屏
height页面可见区域高度
max-aspect-ratio输出设备屏幕可见区域宽度与高度的最大比率
max-color输出设备每像素的最大位值
max-color-index输出设备颜色查找表中的最大条目数
max-device-aspect-ratio输出设备屏幕可见区域宽度与高度的最大比率
max-device-height输出设备屏幕可见区域的最大高度
max-device-width输出设备屏幕最大显示宽度
max-height页面可见区域最大高度
max-monochrome输出设备的单色帧缓冲区​​的每个像素的最大位深度。如果设备没有黑白屏幕,则该值为 0。
max-resolution设备最大分辨率
max-width页面可见区域最大宽度
min-aspect-ratio输出设备屏幕可见区域宽度和高度的最小比例
min-color输出设备每像素的最小位数
min-color-index输出设备颜色查找表中的最小条目数
min-device-aspect-ratio输出设备屏幕显示区域最小宽高比
min-device-width输出设备屏幕最小显示宽度
min-device-height输出设备屏幕最小显示高度
min-height页面可见区域最小高度
min-monochrome输出设备的单色帧缓冲区​​的每像素的最小位深度。如果设备没有黑白屏幕,则该值为 0。
min-resolution设备最小分辨率
min-width页面可见区域最小宽度
monochrome输出设备的单色帧缓冲区​​的每像素位深度。如果设备没有黑白屏幕,则该值为 0。
orientation页面可视区域旋转方向
resolution设备分辨率。如:96dpi、300dpi、118dpcm
scan电视设备扫描流程
width页面可见区域宽度

3. 逻辑运算符

逻辑运算符包括 not、and、and only。可以使用逻辑运算符创建复杂的媒体查询。您还可以通过用逗号分隔多个媒体查询将它们合并到一个规则中。

  • and:用于将多个媒体查询合并为一个媒体查询,如果每个查询规则都为 true,则该媒体查询也为 true。此外,and 运算符还可以组合媒体特征和媒体类型。
  • not:用于否定媒体查询。如果查询规则不为 true,则返回 true,否则返回 false。如果使用 not 运算符,则还必须指定媒体类型。
  • only:仅当整个查询匹配时才启用。如果使用唯一运算符,则还必须指定媒体类型。
4. 定义媒体查询

目前,您可以通过两种方式定义媒体查询:

  • 使用@media或@import规则在样式表中指定相应的设备类型。
  • 使用 media 属性在 <style>、<link>、<source> 或其他 HTML 元素中指定特定设备类型。

1)@媒体

@media 允许您指定一系列媒体查询和 CSS 样式块。仅当媒体查询与所使用的设备匹配时,指定的 CSS 样式才会应用于文档。示例代码如下。

 /* 992 ピクセル以下の画面では、背景色を青に設定 */
@media screen and (max-width: 992px) {
  body {
    background-color: blue;
  }
}

/* 600 ピクセル以下の画面では、背景色をオリーブに設定 */
@media screen and (max-width: 600px) {
  body {
    background-color: olive;
  }
} 

2)@导入

使用@import导入指定的外部样式文件并指定目标媒体类型。示例代码如下。

 @import url("css/screen.css") screen; 
@import url("css/print.css") print;
body { background: #f5f5f5; line-height: 1.2; }

注意:所有@import语句必须放在样式表的开头,样式表中定义的样式将覆盖导入的外部样式表中任何冲突的样式。

3)媒体属性

您还可以在标签的媒体属性中定义媒体查询,例如 <style>、<link> 和 <source>。示例代码如下。

 /* ページの幅が900ピクセル以上の場合、このスタイルを適用する */
<link rel="stylesheet" media="screen and (min-width: 900px)" href="widescreen.css">
/* ページの幅が600ピクセル以下の場合、このスタイルを適用する */
<link rel="stylesheet" media="screen and (max-width: 600px)" href="smallscreen.css"> 

提示:您还可以在媒体属性中指定多种媒体类型。用逗号分隔每种媒体类型,例如 media=”screen, print”。

《CSS媒体查询综合分析(@media)》浅显易懂讲解!您必须观看的最佳 2 个视频

19. Media queries?
https://www.youtube.com/watch?v=joTJwyP1ZsA&pp=ygU_IENTUyDjg6Hjg4fjgqPjgqIg44Kv44Ko44Oq44Gu5YyF5ous55qE44Gq5YiG5p6QIChAbWVkaWEpJmhsPUpB
レスポンシブデザインって何?media query(メディアクエリ)のmax-widthとmin-widthの違いを理解して、スマホ対応しよう😁
https://www.youtube.com/watch?v=LAvi0IXXKZI&pp=ygU_IENTUyDjg6Hjg4fjgqPjgqIg44Kv44Ko44Oq44Gu5YyF5ous55qE44Gq5YiG5p6QIChAbWVkaWEpJmhsPUpB