--- title: '@media' slug: Web/CSS/@media tags: - At-rule - CSS - NeedsTranslation - Reference - TopicStub translation_of: Web/CSS/@media ---
{{CSSRef}}
@media
CSS at-rule 與一組被大括弧隔開、並由 media query 條件定義的 CSS 巢狀區塊有關。@media
at-rule 不只能用在最頂層的 CSS 區塊,也能在任何 CSS conditional-group at-rule 使用。
@media
at-rule 能透過 CSS object model 介面 {{domxref("CSSMediaRule")}} 通行。
A <media-query>
is composed of a optional media type and/or a number of media features.
tty
, tv
, projection
, handheld
, braille
, embossed
, aural
), but they were deprecated in Media Queries 4 and shouldn't be used.Each media feature tests for one specific feature of the browser or device.
Name | Summary | Notes |
---|---|---|
width |
Viewport width | |
height |
Viewport height | |
aspect-ratio |
Width-to-height aspect ratio of the viewport | |
orientation |
Orientation of the viewport | |
resolution |
Pixel density of the output device | |
scan |
Scanning process of the output device | |
grid |
Is the device a grid or bitmap? | |
update-frequency |
How quickly (if at all) can the output device modify the appearance of the content | Added in Media Queries Level 4 |
overflow-block |
How does the output device handle content that overflows the viewport along the block axis? | Added in Media Queries Level 4 |
overflow-inline |
Can content that overflows the viewport along the inline axis be scrolled? | Added in Media Queries Level 4 |
color |
Number of bits per color component of the output device, or zero if the device isn't color. | |
color-index |
Number of entries in the output device's color lookup table, or zero if the device does not use such a table. | |
display-mode |
The display mode of the application, as specified in the web app manifest's display member. | Defined in the Web App Manifest spec. |
monochrome |
Bits per pixel in the output device's monochrome frame buffer, or 0 if the device is not monochrome. | |
inverted-colors |
Is the user agent or underlying OS inverting colors? | Added in Media Queries Level 4 |
pointer |
Is the primary input mechanism a pointing device, and if so, how accurate is it? | Added in Media Queries Level 4 |
hover |
Does the primary input mechanism allow the user to hover over elements? | Added in Media Queries Level 4 |
any-pointer |
Is any available input mechanism a pointing device, and if so, how accurate is it? | Added in Media Queries Level 4 |
any-hover |
Does any available input mechanism allow the user to hover over elements? | Added in Media Queries Level 4 |
light-level |
Current ambient light level | Added in Media Queries Level 4 |
scripting |
Is scripting (e.g. JavaScript) available? | Added in Media Queries Level 4 |
device-width {{obsolete_inline}} |
Width of the rendering surface of the output device | Deprecated in Media Queries Level 4 |
device-height {{obsolete_inline}} |
Height of the rendering surface of the output device | Deprecated in Media Queries Level 4 |
device-aspect-ratio {{obsolete_inline}} |
Width-to-height aspect ratio of the output device | Deprecated in Media Queries Level 4 |
-webkit-device-pixel-ratio {{non-standard_inline}} |
Number of physical device pixels per CSS pixel | Nonstandard; WebKit/Blink-specific. If possible, use the resolution media feature instead. |
-webkit-transform-3d {{non-standard_inline}} |
Are CSS 3D {{cssxref("transform")}}s supported? | Nonstandard; WebKit/Blink-specific |
-webkit-transform-2d {{non-standard_inline}} |
Are CSS 2D {{cssxref("transform")}}s supported? | Nonstandard; WebKit-specific |
-webkit-transition {{non-standard_inline}} |
Are CSS {{cssxref("transition")}}s supported? | Nonstandard; WebKit-specific |
-webkit-animation {{non-standard_inline}} |
Are CSS {{cssxref("animation")}}s supported? | Nonstandard; WebKit-specific |
@media print { body { font-size: 10pt } } @media screen { body { font-size: 13px } } @media screen, print { body { line-height: 1.2 } } @media only screen and (min-device-width: 320px) and (max-device-width: 480px) and (-webkit-min-device-pixel-ratio: 2) { body { line-height: 1.4 } }
Specification | Status | Comment |
---|---|---|
{{SpecName('Compat', '#css-media-queries', 'CSS Media Queries')}} | {{Spec2('Compat')}} | Standardizes the -webkit-device-pixel-ratio and -webkit-transform-3d media features. |
{{SpecName('CSS3 Conditional', '#at-media', '@media')}} | {{Spec2('CSS3 Conditional')}} | Defines the basic syntax of the @media rule. |
{{SpecName('CSS4 Media Queries', '#media', '@media')}} | {{Spec2('CSS4 Media Queries')}} |
Added |
{{SpecName('CSS3 Media Queries', '#media0', '@media')}} | {{Spec2('CSS3 Media Queries')}} | No change. |
{{SpecName('CSS2.1', 'media.html#at-media-rule', '@media')}} | {{Spec2('CSS2.1')}} | Initial definition. |
{{CompatibilityTable}}
Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
Basic support (all , print , screen ) |
1.0 | {{CompatVersionUnknown}} | {{ CompatGeckoDesktop(1.7) }} | 6.0 | 9.2 | 1.3 |
speech |
{{CompatNo}} | {{CompatNo}} | {{CompatNo}} | {{CompatNo}} | 9.2 | {{CompatNo}} |
Media features | 1.0 | {{CompatVersionUnknown}} | {{ CompatGeckoDesktop(1.7) }} | 9.0 | 9.2 | 1.3 |
display-mode media feature |
{{CompatUnknown}} | {{CompatNo}} | {{ CompatGeckoDesktop(47) }} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} |
Feature | Android | Edge | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support (all , print , screen ) |
1.0 | {{CompatVersionUnknown}} | {{ CompatGeckoMobile(1.7) }} | {{CompatVersionUnknown}} | 9.0 | 3.1 |
speech |
{{CompatNo}} | {{CompatNo}} | {{CompatNo}} | {{CompatNo}} | 9.0 | {{CompatNo}} |
Media features | 1.0 | {{CompatVersionUnknown}} | {{ CompatGeckoMobile(1.7) }} | {{CompatVersionUnknown}} | 9.0 | 3.1 |
display-mode media feature |
{{CompatUnknown}} | {{CompatNo}} | {{CompatVersionUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} |