CSS @media rule
- ກັບໄປຫລັງການ max-width
- ກັບໄປຕໍ່ໜ້າ min-block-size
ການສະແດງຮູບຮ່າງຫຼືການນໍາໃຊ້
@media ສະຫຼຸບສຳພັນສາຍລະບາຍສຳພັນຂໍ້ວັດຖຸຂອງສານມືສາຍລະບາຍສຳພັນກັບສານມືສາຍລະບາຍ/ອຸປະກອນທີ່ຕ່າງກັນ。
ການຄົ້ນຫາສານມືສາຍລະບາຍສາມາດນຳໃຊ້ເພື່ອກວດສອບຫຼາຍຢ່າງຫຼັງຈາກ:
- ຄວາມກວ້າງຂອງປ່ອງລະບາຍ
- ຄວາມກວ້າງຂອງອຸປະກອນ
- ການກໍານົດ(ວ່າສະໄຫມຈະຢູ່ໃນຮູບແບບສາຍລະບາຍຫຼືສາຍລະບາຍທີ່ຢູ່ຂອງສະໄຫມຫຼືແຜ່ນພິມ)
- ຄວາມຄືບຄານ
ການນຳໃຊ້ການຄົ້ນຫາສານມືຂໍ້ວັດຖຸແມ່ນເຕັກນິກທີ່ມັກຂາຍຫຼາຍທີ່ຖືກນໍາໃຊ້ເພື່ອຈະຕັດສິນລະບຽບຮູບແບບສຳພັນສຳລັບຄອມພິວເຕີບໄອຕະບັດຂາຍລະບາຍ(Responsive Web Design)。
ທ່ານສາມາດໃຊ້ການຄົ້ນຫາສານມືຂໍ້ວັດຖຸທີ່ຈະມີຮູບແບບພຽງແຕ່ສຳພັນພິມຫຼືຜູ້ອ່ານສາຍລະບາຍດ້ວຍສານມືສາຍລະບາຍ(mediatype: print, screen ຫຼື speech)。
除了媒体类型之外,还有媒体特性。媒体特性通过允许测试用户代理或显示设备的具体特性,为媒体查询提供了更多特定细节。例如,您可以将样式仅应用于大于或小于特定宽度的屏幕。
另请参阅:
CSS 教程:ການຊອກຫາສຽງ CSS
CSS 教程:CSS 媒体查询实例
RWD 教程:除了媒体类型之外,还有媒体特性。媒体特性通过允许测试用户代理或显示设备的具体特性,为媒体查询提供了更多特定细节。例如,您可以将样式仅应用于大于或小于特定宽度的屏幕。
另请参阅:CSS 教程:
CSS 媒体查询实例
RWD 教程:
通过媒体查询实现响应式 Web 设计
JavaScript 参考手册: body { background-color: lightblue; } }
window.matchMedia() 方法
实例
例子 1 ຖ້າຄວາມວົງມະນຸດຂອງບັນດາບັນນາທິການຫຼືບໍ່ຫຼາຍຫຼືບໍ່ວົງມະນຸດ 600px ຫຼືຫຼາຍຫຼືບໍ່ວົງມະນຸດ 600px, ຈະປ່ຽນສີກາກບໍ່ສາມາດພາຍໃຕ້ <body> ທີ່ສີຫຼາຍ. }
@media only screen and (max-width: 600px) {
ມີຫຼາຍຄວາມພິມສັດທີ່ພາຍໃຕ້ຫຼັງການຕັ້ງລາຍການ TIY.
CSS 语法
@media not|only mediatype and (mediafeature and|or|not mediafeature) {
CSS-Code;
not, only ແລະ and ຄຳສັບຈະປ້ອງກັນຄວາມໝາຍຂອງການສຳຫຼວດສັດຕະວັດ.
not: not ຄຳສັບຈະປ້ອງກັນຄວາມໝາຍຂອງການສຳຫຼວດສັດຕະວັດ. only: only ຄຳສັບຈະປ້ອງກັນບັນດາບັນນາທິການເກົ່າທີ່ຈະນໍາໃຊ້ບັນດາບັນນາທິການທີ່ບໍ່ສາມາດສະແດງບັນດາຄວາມພິມສັດທີ່ມີຄວາມພິມສັດ. ມັນບໍ່ມີຜົນຕໍ່ບັນດາບັນນາທິການທີ່ຫຼາຍຫຼືບໍ່ສະແດງ. and: and ຄຳສັບຢູ່ທີ່ປະສົມຄວາມພິມສັດກັບປະສົມຄວາມພິມສັດຫຼືຄວາມພິມສັດ.
ພວກມັນກໍ່ແມ່ນເລືອກຫຼືບໍ່. ແຕ່ຖ້ານຳໃຊ້ not ຫຼື only ທີ່ຈະຕ້ອງການກຳນົດປະສົມຄວາມພິມສັດ.
ຄວາມຜົນງານ | ອະທິບາຍ |
---|---|
<link rel="stylesheet" media="screen and (min-width: 900px)" href="widescreen.css"> | <link rel="stylesheet" media="screen and (max-width: 600px)" href="smallscreen.css"> |
.... | media type |
all | |
screen | speech |
ປະສົມຄວາມພິມສັດ
ຄວາມຜົນງານ | ອະທິບາຍ |
---|---|
any-hover |
ມີບັນດາການເຂົ້າຫາຄູ່ມືຫຼືບໍ່ທີ່ສາມາດອະນຸຍາດຜູ້ນຳໃຊ້ຫຼື(ສັນຍານປີກພອງ)ຢູ່ເທິງປະກອບຫຼືບໍ່? 在 Media Queries Level 4 中被添加。 |
any-pointer |
ມີບັນດາການເຂົ້າຫາຄູ່ມືຫາຄູ່ມືຫຼືບໍ່? ຖ້າມີແມ່ນການສາມາດກວດຄຳນວນຫຼືບໍ່? 在 Media Queries Level 4 中被添加。 |
aspect-ratio | 视口(viewport)的宽高比。 |
color |
输出设备每个像素的比特值,常见的有 8、16、32 位。 如果设备不支持输出彩色,则该值为 0。 |
color-gamut |
用户代理和输出设备大致程度上支持的色域。 在 Media Queries Level 4 中被添加。 |
color-index |
输出设备的颜色查询表(color lookup table)中的条目数量。 如果设备不使用颜色查询表,则该值为 0。 |
device-aspect-ratio |
输出设备的宽高比。 已在 Media Queries Level 4 中被弃用。 |
device-height |
输出设备渲染表面(如屏幕)的高度。 已在 Media Queries Level 4 中被弃用。 |
device-width |
输出设备渲染表面(如屏幕)的宽度。 已在 Media Queries Level 4 中被弃用。 |
display-mode |
应用程序的显示模式,如 web app 的 manifest 中的 display 成员所指定 在 Web App Manifest spec 被定义。 |
forced-colors |
检测是用户代理否限制调色板。 在 Media Queries Level 5 中被添加。 |
grid | color |
color | color-gamut |
color-index |
device-aspect-ratio 在 Media Queries Level 4 中被添加。 |
device-height |
device-width 在 Media Queries Level 5 中被添加。 |
display-mode |
forced-colors 在 Media Queries Level 5 中被添加。 |
grid | height |
hover | inverted-colors |
light-level | max-aspect-ratio |
max-color | max-color-index |
max-height | max-monochrome |
ຈຳນວນສະເພາະພາສາດີນາທິການທີ່ອຸປະກອນສາມາດສະແດງ | max-resolution |
max-width | ຄວາມສະເພາະພາສາດີນາທິການສະເພາະພາສາດີນາທິການ |
min-aspect-ratio | ຄວາມສະເພາະພາສາດີນາທິການສະເພາະພາສາດີນາທິການ |
min-color | ຄວາມສະເພາະພາສາດີນາທິການສະເພາະພາສາດີນາທິການ |
min-color-index | ຈຳນວນສະເພາະພາສາດີນາທິການທີ່ອຸປະກອນສາມາດສະແດງ |
min-height | ສະເພາະຄວາມສະເພາະພາສາດີນາທິການສະເພາະຄວາມສະເພາະພາສາດີນາທິການ |
min-monochrome | ຄວາມສະເພາະພາສາດີນາທິການສະເພາະຄວາມສະເພາະພາສາດີນາທິການສະເພາະຄວາມສະເພາະພາສາດີນາທິການ |
min-resolution | 设备的最低分辨率,使用 dpi 或 dpcm。 |
min-width | 显示区域的最小宽度,例如浏览器窗口。 |
monochrome |
输出设备单色帧缓冲区中每个像素的位深度。 如果设备并非黑白屏幕,则该值为 0。 |
orientation | 视窗(viewport)的旋转方向(横屏还是竖屏模式)。 |
overflow-block |
输出设备如何处理沿块轴溢出视口(viewport)的内容。 在 Media Queries Level 4 中被添加。 |
overflow-inline |
沿内联轴溢出视口(viewport)的内容是否可以滚动? 在 Media Queries Level 4 中被添加。 |
pointer |
主要输入机制是一个指针设备吗?如果是,它的精度如何? 在 Media Queries Level 4 中被添加。 |
prefers-color-scheme |
探测用户倾向于选择亮色还是暗色的配色方案。 在 Media Queries Level 5 中被添加。 |
prefers-contrast |
探测用户是否有向系统要求提高或降低相近颜色之间的对比度。 在 Media Queries Level 5 中被添加。 |
prefers-reduced-motion |
用户是否希望页面上出现更少的动态效果。 在 Media Queries Level 5 中被添加。 |
prefers-reduced-transparency |
用户是否倾向于选择更低的透明度。 在 Media Queries Level 5 中被添加。 |
resolution | 输出设备的分辨率,使用 dpi 或 dpcm。 |
scan | 输出设备的扫描过程(适用于电视等)。 |
scripting |
探测脚本(例如 JavaScript)是否可用。 在 Media Queries Level 5 中被添加。 |
update |
输出设备更新内容的渲染结果的频率。 在 Media Queries Level 4 中被添加。 |
width | 视窗(viewport)的宽度。 |
更多实例
例子 2
当浏览器的宽度为 600px 或更小时,隐藏元素:
@media screen and (max-width: 600px) { div.example { display: none; } }
例子 3
如果视口的宽度为 800 像素或更宽,请使用媒体查询将背景色设置为淡紫色;如果视口的宽度介于 400 至 799 像素之间,则使用媒体查询将背景色设置为浅绿色。如果视口小于 400 像素,则背景色为浅蓝色:
body { background-color: lightblue; } @media screen and (min-width: 400px) { body { background-color: lightgreen; } } @media screen and (min-width: 800px) { body { background-color: lavender; } }
ຕົວຢ່າງ 4
创建一个响应式导航菜单(在大屏幕上水平显示,在小屏幕上垂直显示):
@media screen and (max-width: 600px) { .topnav a { float: none; width: 100%; } }
例子 5
使用媒体查询来创建响应式列布局:
/* 在 992px 或更小的屏幕上,从四列变为两列 */ @media screen and (max-width: 992px) { .column { width: 50%; } } /* ຖ້າມີຄວາມກວດສອບຊ້າສິບຫລາຍປະຕູຂຽວ - ຈັດການການປະກອບຂອງບັນຊີບໃຫ້ປະກອບບັນຊີບນອກກັນ */ @media screen and (max-width: 600px) { .column { width: 100%; } }
ຕົວຢ່າງ 6
ນຳໃຊ້ການສັດ @media ເພື່ອສ້າງບັນຊີບຄວາມສະຫຼຸບ:
ຕົວຢ່າງ 7
ການສັດ @media ຍັງສາມາດນຳໃຊ້ເພື່ອປ່ຽນການຈັດການບົດແບບຂອງບັນຊີບອີກຕາມການກວດສອບຕັ້ງໃນຮູບແບບບັນຊີບ. ທ່ານສາມາດຂຽນຄັນນັບ CSS ທີ່ຈະນຳໃຊ້ພຽງແຕ່ຕັ້ງໃນປະກອບຂອງບັນຊີບທີ່ມີລະດັບວົງວຽນຫລາຍກວ່າລະດັບຫລາຍ (ທີ່ມີຮູບແບບ 'ສະໝອງຫລັງ').
ຖ້າການກວດສອບຕັ້ງໃນຮູບແບບສະໝອງຫລັງ - ນຳໃຊ້ສີສີນໍ້າສີຂຽວ:
@media only screen and (orientation: landscape) { body { background-color: lightblue; } }
ຕົວຢ່າງ 8
ນຳໃຊ້ການສັດ @media ເພື່ອການການສະແດງສັບສຳນັກງານໃນໜ້າຈໍານວນສີຂຽວໃນຂັ້ນຕອນການສະແດງບັນຊີບ, ແລະ ສີຂຽວໃນຂັ້ນຕອນການພິມ:
@media screen { body { color: green; } } @media print { body { color: black; } }
ຕົວຢ່າງ 9
ລາຍການທີ່ຖືກສັດຈຳນວນ: ນຳໃຊ້ຄວາມແຈກຊະນະທີ່ຖືກຈຳນວນໃຫ້ກັບການສັດຈຳນວນທີ່ມີຢູ່ກ່ອນ (ທີ່ມີປະສິດທິພາບຄືກັບການການສັດ OR):
/* ຖ້າມີຄວາມກວດສອບລະຫວ່າງ 600px ແລະ 900px ຫລື ສູງກວ່າ 1100px - ປ່ຽນແບບ <div> */ @media screen and (max-width: 900px) and (min-width: 600px), (min-width: 1100px) { div.example { font-size: 50px; padding: 50px; border: 8px solid black; background: yellow; } }
ການສະຫຼຸບບັນຊີບ
ຈຳນວນໃນຕາກາດສະແດງການສະຫຼຸບ @media ກັບບັນຊີບໍລິຫານຄັດຄ້ານທໍາອິດທີ່ເປັນສະຖານະສະຫຼຸບ.
Chrome | IE / Edge | Firefox | Safari | Opera |
---|---|---|---|---|
21 | 9 | 3.5 | 4.0 | 9 |
- ກັບໄປຫລັງການ max-width
- ກັບໄປຕໍ່ໜ້າ min-block-size