åªä½æ¥è¯¢ï¼Media queryï¼é常å®ç¨ï¼å°¤å ¶æ¯å½ä½ æ³è¦æ ¹æ®è®¾å¤ç大è´ç±»åï¼å¦æå°è®¾å¤ä¸å¸¦å±å¹ç设å¤ï¼æè ç¹å®çç¹å¾å设å¤åæ°ï¼ä¾å¦å±å¹å辨çåæµè§å¨è§å£å®½åº¦ï¼æ¥ä¿®æ¹ç½ç«æåºç¨ç¨åºæ¶ã
åªä½æ¥è¯¢å¸¸è¢«ç¨äºä»¥ä¸ç®çï¼
@media
å @import
at è§åç¨ CSS è£
é¥°æ ·å¼ãmedia=
屿§ä¸º<style>
ã<link>
ã<source>
åå
¶ä» HTML å
ç´ æå®ç¹å®çåªä½ç±»åãå¦ï¼<link rel="stylesheet" src="styles.css" media="screen" />
<link rel="stylesheet" src="styles.css" media="print" />
Window.matchMedia()
åMediaQueryList.addListener()
æ¹æ³æ¥æµè¯åçæ§åªä½ç¶æã夿³¨ï¼ æ¬é¡µçä¾åä½¿ç¨ CSS @media
çæ¹å¼æ¥è¯´æç®çï¼ä½æ¯å¯¹äºææç±»åçåªä½æ¥è¯¢ï¼åºæ¬è¯æ³åç¸åã
æ¯æ¡åªä½æ¥è¯¢è¯å¥é½ç±ä¸ä¸ªå¯éçåªä½ç±»ååä»»ææ°éçåªä½ç¹æ§è¡¨è¾¾å¼ææãå¯ä»¥ä½¿ç¨å¤ç§é»è¾æä½ç¬¦å并夿¡åªä½æ¥è¯¢è¯å¥ãåªä½æ¥è¯¢è¯å¥ä¸åºå大å°åã
å½åªä½ç±»åï¼å¦ææå®ï¼ä¸å¨å ¶ä¸æ¾ç¤ºææ¡£ç设å¤å¹é 并䏿æåªä½åè½è¡¨è¾¾å¼é½è®¡ç®ä¸º true æ¶ï¼åªä½æ¥è¯¢å°è®¡ç®ä¸º trueãæ¶åæªç¥åªä½ç±»åçæ¥è¯¢å§ç»ä¸º falseã
夿³¨ï¼ å³ä½¿åªä½æ¥è¯¢è¿å falseï¼å¸¦æåªä½æ¥è¯¢éå å°å
¶<link>
æ è®°çæ ·å¼è¡¨ä»å°ä¸è½½ã使¯ï¼é¤éæ¥è¯¢ç»æå为 trueï¼å¦åå
¶å
容å°ä¸éç¨ã
åªä½ç±»åæè¿°äºç»å®è®¾å¤çä¸è¬ç±»å«ã尽管é常å¨è®¾è®¡ç½ç«æ¶ä¼èèå±å¹ï¼ä½ä½ å¯è½å¸æå建éå¯¹ç¹æ®è®¾å¤ï¼ä¾å¦æå°æºæåºäºé³é¢çå±å¹é 读å¨ï¼çæ ·å¼ãä¾å¦ï¼æ¤ CSS é对æå°æºï¼
ä½ è¿å¯ä»¥å®ä½å¤ä¸ªè®¾å¤ãä¾å¦ï¼æ¤@media
è§å使ç¨ä¸¤ä¸ªåªä½æ¥è¯¢æ¥åæ¶å®ä½å±å¹åæå°è®¾å¤
@media screen, print { ... }
æå ³ææåªä½ç±»åçå表ï¼è¯·åè§Media typesãç±äºå®ä»¬ä» 以é常广æ³çæ¯è¯æè¿°è®¾å¤ï¼å æ¤åªæå°æ°å ç§å¯ç¨ãè¦å®ä½æ´å ·ä½ç屿§ï¼è¯·æ¹ç¨åªä½åè½ã
å®ä½åªä½ç¹æ§åªä½åè½æè¿°äºç»å®çuser agentçè¾åºè®¾å¤æç¯å¢çç¹å®ç¹å¾ãä¾å¦ï¼ä½ å¯ä»¥å°ç¹å®æ ·å¼åºç¨äºå®½å±æ¾ç¤ºå¨ï¼ä½¿ç¨é¼ æ çè®¡ç®æºï¼æåºç¨äºå¨å¼±å æ¡ä»¶ä¸ä½¿ç¨ç设å¤ãå½ç¨æ·ç主è¦è¾å ¥æºå¶ï¼ä¾å¦é¼ æ ï¼å¯ä»¥æ¬åå¨å ç´ ä¸æ¶ï¼å¦ä¸ä¸ºä¸ä¸ªç¤ºä¾ï¼
@media (hover: hover) { ... }
许å¤åªä½åè½é½æ¯èå´åè½ï¼è¿æå³çå¯ä»¥å¨å®ä»¬åé¢å ä¸âæå°âæâæå¤§âæ¥è¡¨ç¤ºâæå°æ¡ä»¶âæâæå¤§æ¡ä»¶â约æãä¾å¦ï¼ä» å½ä½ çæµè§å¨çviewport宽度çäºæå°äº 12450px æ¶ï¼æ¤ CSS æä¼åºç¨æ ·å¼ï¼
@media (max-width: 12450px) { ... }
å¦æä½ å¨æªæå®å¼çæ
åµä¸å建åªä½åè½æ¥è¯¢ï¼åè¯¥æ ·å¼å°å
¨é¨è¢«åºç¨ï¼åªè¦è¯¥æ¥è¯¢çå¼ä¸ä¸ºé¶ï¼æå¨ Level 4 ä¸ä¸ºnone
ï¼å³å¯ãä¾å¦ï¼æ¤ CSS å°éç¨äºä»»ä½å¸¦æå½©è²å±å¹ç设å¤ï¼
妿æä¸ªåè½ä¸éç¨äºè¿è¡æµè§å¨ç设å¤ï¼åæ¶å该åªä½åè½ç表达å¼å§ç»ä¸º falseãä¾å¦ï¼å°ä¸ä¼ä½¿ç¨åµå¥å¨ä»¥ä¸æ¥è¯¢ä¸çæ ·å¼ï¼å 为没æè¯é³ä¸ç¨è®¾å¤å ·æå±å¹é¿å®½æ¯ï¼
@media speech and (aspect-ratio: 11/5) { ... }
æå ³æ´å¤åªä½åè½media feature示ä¾ï¼è¯·åé æ¯ä¸ªç¹å®åè½çåè页ã
åå»ºå¤ææ¥è¯¢ææ¶ä½ å¯è½æ³å建ä¸ä¸ªåå³äºå¤ä¸ªæ¡ä»¶çåªä½æ¥è¯¢ãè¿å°±æ¯é»è¾è¿ç®ç¬¦ä½¿ç¨çåºæ¯ï¼not
ï¼and
ï¼å only
ãæ¤å¤ï¼ä½ å¯ä»¥å°å¤ä¸ªåªä½æ¥è¯¢åå¹¶å°ä¸ä¸ªéå·åéçå表ä¸ãè¿ä½¿ä½ å¯ä»¥å¨ä¸åæ
åµä¸åºç¨ç¸åçæ ·å¼ã
å¨åé¢ç示ä¾ä¸ï¼æä»¬å·²ç»çå° and
è¿ç®ç¬¦ç¨äºå°åªä½ç±»åä¸åªä½åè½åç»ãand
è¿ç®ç¬¦è¿å¯ä»¥å°å¤ä¸ªåªä½åè½ç»åå°å个åªä½æ¥è¯¢ä¸ãåæ¶ï¼not
è¿ç®ç¬¦ä¼å¦å®åªä½æ¥è¯¢ï¼ä»èåºæ¬ä¸é¢ åäºå®çæ£å¸¸å«ä¹ãonly
è¿ç®ç¬¦å¯é²æ¢è¾æ©çæµè§å¨åºç¨æ ·å¼ã
夿³¨ï¼ å¨å¤§å¤æ°æ
åµä¸ï¼é»è®¤æ
åµä¸ï¼å¦ææªæå®å
¶ä»ç±»åï¼å使ç¨all
åªä½ç±»åã使¯ï¼å¦æä½¿ç¨not
æonly
è¿ç®ç¬¦ï¼åå¿
é¡»æ¾å¼æå®åªä½ç±»åã
and
å
³é®åå°åªä½åè½ä¸åªä½ç±»åæå
¶ä»åªä½åè½ç»åå¨ä¸èµ·ãæ¤ç¤ºä¾ç»åäºä¸¤ç§åªä½åè½ï¼ä»¥å°æ ·å¼éå¶ä¸ºå®½åº¦è³å°ä¸º 30 em çæ¨ªåç设å¤ï¼
@media (min-width: 30em) and (orientation: landscape) { ... }
è¦å°æ ·å¼éå¶ä¸ºå¸¦æå±å¹ç设å¤ï¼å¯ä»¥å°åªä½åè½é¾æ¥å°screen
åªä½ç±»åï¼
@media screen and (min-width: 30em) and (orientation: landscape) { ... }
æµè¯å¤éæ¥è¯¢
å½ç¨æ·ç设å¤ä¸åç§åªä½ç±»åï¼åè½æç¶æä¸çä»»ä½ä¸ç§å¹é æ¶ï¼å¯ä»¥ä½¿ç¨éå·åéçå表æ¥åºç¨æ ·å¼ãä¾å¦ï¼å¦æç¨æ·è®¾å¤çæå°é«åº¦ä¸º 680px æä¸ºçºµå模å¼çå±å¹è®¾å¤ï¼å以ä¸è§åå°åºç¨å ¶æ ·å¼ï¼
@media (min-height: 680px), screen and (orientation: portrait) { ... }
以ä¸é¢ç示ä¾ä¸ºä¾ï¼å¦æç¨æ·ä½¿ç¨çæå°æºç页é¢é«åº¦ä¸º 800 åç´ ï¼å media è¯å¥å°è¿å trueï¼å 为å°åºç¨ç¬¬ä¸ä¸ªæ¥è¯¢ãåæ ·ï¼å¦æç¨æ·ä½¿ç¨çæ¯çºµå模å¼çæºè½ææºï¼å¹¶ä¸è§å£é«åº¦ä¸º 480pxï¼åå°åºç¨ç¬¬äºä¸ªæ¥è¯¢ï¼å¹¶ä¸ media è¯å¥ä»å°è¿å trueã
å转æ¥è¯¢çå«ä¹not
å
³é®åä¼å转æ´ä¸ªåªä½æ¥è¯¢çå«ä¹ãå®åªä¼å¦å®è¦åºç¨çç¹å®åªä½æ¥è¯¢ã ï¼å æ¤ï¼å®ä¸ä¼åºç¨äºä»¥éå·åéçåªä½æ¥è¯¢å表ä¸çæ¯ä¸ªåªä½æ¥è¯¢ãï¼not
å
³é®åä¸è½ç¨äºå¦å®å个åè½æ¥è¯¢ï¼åªè½ç¨äºå¦å®æ´ä¸ªåªä½æ¥è¯¢ãçç以ä¸not
å
³é®åçä¾åï¼
@media not all and (monochrome) { ... }
æä»¥ä¸è¿°æ¥è¯¢çä»·äºï¼
@media not (all and (monochrome)) { ... }
è䏿¯ï¼
@media (not all) and (monochrome) { ... }
åçå¦ä¸ä¸ªä¾åï¼å¦ä¸åªä½æ¥è¯¢ï¼
@media not screen and (color), print and (color) { ... }
çä»·äºï¼
@media (not (screen and (color))), print and (color) { ... }
æåèçæ¬æµè§å¨å
¼å®¹æ§
only
å
³é®åå¯é²æ¢ä¸æ¯æå¸¦æåªä½åè½çåªä½æ¥è¯¢çæ§çæµè§å¨åºç¨ç»å®çæ ·å¼ãå®å¯¹ç°ä»£æµè§å¨æ²¡æå½±åã
@media only screen and (color) { ... }
çæ¬ 4 ä¸çè¯æ³æ¹è¿
åªä½æ¥è¯¢ 4 级è§èå¯¹è¯æ³è¿è¡äºä¸äºæ¹è¿ï¼ä»¥ä½¿ç¨å
·æâèå´âç±»åï¼ä¾å¦å®½åº¦æé«åº¦ï¼åå°åä½ï¼çåè½è¿è¡åªä½æ¥è¯¢ãçº§å« 4 æ·»å äºç¨äºç¼åæ¤ç±»çæ¥è¯¢èå´ä¸ä¸æãä¾å¦ï¼ä½¿ç¨æå¤§å®½åº¦max-
åè½ï¼æä»¬å¯ä»¥ç¼å以ä¸ä»£ç ï¼
夿³¨ï¼ åªä½æ¥è¯¢ 4 级è§èå¨ç°ä»£æµè§å¨ä¸å
·æåççæ¯æï¼ä½æäºåªä½åè½å¹¶æªå¾å°å¾å¥½çæ¯æãæå
³æ´å¤è¯¦ç»ä¿¡æ¯ï¼è¯·åè§ @media
browser compatibility tableã
@media (max-width: 30em) { ... }
å¨åªä½æ¥è¯¢ 4 级è§èå¯ä»¥è¿æ ·åï¼
@media (width <= 30em) { ... }
使ç¨min-
åmax-
å¯ä»¥æµè¯ä¸ä¸ªå¨ä¸¤ä¸ªå¼ä¹é´ç宽度
@media (min-width: 30em) and (max-width: 50em) { ... }
ç¨ 4 çº§è¯æ³ä¹¦åå¦ä¸
@media (30em <= width <= 50em ) { ... }
åªä½æ¥è¯¢ 4 级è§èè¿æ·»å äºç¨and, not, å orå®ç°ç宿´çå¸å°è¿ç®æ¥åå¹¶åªä½æ¥è¯¢çæ¹æ³ã
使ç¨not
å¦å®ä¸ä¸ªç¹æ§
å¨åªä½åè½å¨å´ä½¿ç¨not()
ä¼å¦å®æ¥è¯¢ä¸çè¯¥ç¹æ§ãä¾å¦ï¼å¦æè®¾å¤æ²¡ææ¬ååè½ï¼ånot(hover)
å°è¢«å¹é
ï¼
@media (not(hover)) { ... }
ç¨ or
æµè¯å¤ä¸ªç¹æ§
ä½ å¯ä»¥ä½¿ç¨or
æµè¯å¤ä¸ªåè½ä¹é´çå¹é
ï¼å¦æä»»ä½åè½ä¸º trueï¼åè§£æä¸º trueãä¾å¦ï¼ä»¥ä¸æ¥è¯¢æµè¯å
·æåè²æ¾ç¤ºææ¬ååè½ç设å¤ï¼
@media (not (color)) or (hover) { ... }
åè§
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4