前言

Media Query 是用来做 RWD 的, 类似 JS 的 if else. 写的多有伤管理, 所以要谨慎使用哦.

参考:

Learn CSS Media Query In 7 Minutes

https://css-tricks.com/logic-in-css-media-queries

@media screen / print / all

screen 是屏幕, 手机, 平板, 电脑都算

print 是打印 ctrl + p 的情况下.

all 是两者皆是, 也是 default value @media (min-width: 100px) 相等于 @media all and (min-width: 100px)

@media (min-width) / (max-width)

这里的 width 指的是 viewport 的 width.

@media (min-width: 600px) /* if (viewport.width >= 600px)*/
@media (max-width: 600px) /* if (viewport.width <= 600px)*/

@media (orientation)

@media (orientation: landscape)
@media (orientation: portrait)

And, Or Logic (&& ||)

用 and 表示同时

@media (min-width: 500px) and (max-width: 800px) /*>= 500px && <= 800px*/

用 , 逗号表示或者

@media (min-width: 500px), (max-width: 800px) /*>= 500px || <= 800px*/

Not (!)

表示相反匹配

@media not (min-width: 500px)

Overriding

media query 也是往下走的, 下面的 style 覆盖上面的. 所以下面这样写是没有意义的

@media (min-width: 500px) {
h1 {
color: yellow;
}
}
h1 {
color: red;
}

因为下面的 h1 color red 一定会覆盖上面的.

所以一般上 media query 都是放 default style 的下面, 比如 mobile first 的写法

html { background: red; }

@media (min-width: 600px) {
html { background: green; }
}

resolution

常用的是 match device pixel ratio. 比如

@media (max-width: 360px) and (min-resolution: 2dppx) {
h1 {
color: blue;
}
}

360px 或一下和 device pixel ratio 2

支持度没有问题

Sass 会自动 fallback 成

@media (max-width: 360px) and (-webkit-min-device-pixel-ratio: 2), (max-width: 360px) and (min-resolution: 2dppx) {
h1 {
color: blue;
}
}

webkit-min-device-pixel-ratio 不是 standard 尽量别用.

CSS – Media Query的更多相关文章

  1. mobile adaptor & css media query

    mobile adaptor & css media query 移动端适配 & 媒体查询 http://cssmediaqueries.com/ device-aspect-rati ...

  2. CSS Media Query

    [CSS Media Query] CSS Media Queries are a feature in CSS3 which allows you to specify when certain C ...

  3. css Media Query详解

    Media Queries详解 Media Queries直译过来就是“媒体查询”,在我们平时的Web页面中head部分常看到这样的一段代码: 1 <link href="css/re ...

  4. CSS media query应用中的层叠特性使用最佳实践

    media query是css3规范中引入的,它提供了一种responsive design的基础机制:浏览器在不同size的设备中将以不同样式展现网页,这就给一个网页能够适应不同device一种可能 ...

  5. iPhone CSS media query(媒体查询)

    iPhone5  iPhone6  iPhone6Plus iPad设备 media query(媒体查询)代码. iPhone < 5: @media screen and (device-a ...

  6. 一些实用的CSS Media Query代码片段,个人采集

    CSS3的出现让响应式Web设计变得简单,CSS3提供了强大的media queries,允许你针对不同的条件设置不同的样式,可以在不修改页面内容的情况下,为不同设备提供不同的样式效果. 以下是一些C ...

  7. CSS media queries

    最近在做一些页面打印时的特殊处理接触到了media queries,想系统学习一下,在MOZILLA DEVELOPER NETWORK看到一篇文章讲的很不错,结合自己的使用总结一下. CSS2/me ...

  8. 采用CSS3 Media Query技术适应Android平板屏幕分辨率和屏幕像素密度

    采用HTML5在开发移动应用程序满足各种需求Android分辨率和屏幕的平板设备密度,这是非常麻烦的过程,最终的解决方案是使用css media query,匹配相同的时间分辨率和屏幕像素密度.上进行 ...

  9. 脚本检测 media query 分界点

    当需要为不同屏幕大小添加不同脚本的时候,首先需要检测对应的media query 是否起效 也就是CSS( @screen only and (min-width: 40em) {})和javascr ...

  10. 响应式设计的思考:媒体查询(media query)

    Jason Grigsby发表了篇文章,<CSS Media Query for Mobile is Fool’s Gold>对媒体查询(media query)吐槽,大意是在移动设备上使 ...

随机推荐

  1. 1. C++ 开发环境

    C++ 开发环境 Visual C++ / GCC(G++) / Clang(Clang++) 集成开发环境:Visual Studio / CodeLite / Code::blocks / CLi ...

  2. 国产开源存储之光:Curve 通过信创认证

    网易数帆喜讯再传,Curve 近日通过信息技术应用创新(信创)认证! Curve 是一款高性能.易运维.云原生的分布式存储系统,由网易数帆存储团队发起开源,现为 CNCF 沙箱项目.国家工业信息安全发 ...

  3. 解决php提示Maximum execution time of 30 seconds exceeded错误

    如何解决错误? 基本上,有3种方法可以处理此错误: 修改php配置文件php.ini文件 使用 ini_set() 函数 使用set_time_limit()函数 1)修改php配置文件php.ini ...

  4. Python threading实现多线程 基础篇

    讲多线程前,先要了解什么是进程,什么是线程,已经知道的请略过. 一.进程与线程: 进程是资源分配的最小单位,一个程序至少有一个进程. 线程是程序执行的最小单位,一个进程至少有一个线程. 进程都有自己独 ...

  5. python的Faker使用

    import json from faker import Faker from faker_demo.CustomFaker import CustomProvider myfaker = Fake ...

  6. 【Java】 Springboot+Vue 大文件断点续传

    同事在重构老系统的项目时用到了这种大文件上传 第一篇文章是简书的这个: https://www.jianshu.com/p/b59d7dee15a6 是夏大佬写的vue-uploader组件: htt ...

  7. 【Dubbo】构建SpringBoot整合Dubbo的Demo

    参考乐字节的Dubbo教程 https://www.bilibili.com/video/BV19L4y1n7YE Zookeeper单机部署 (Windows) 因为项目需要,这里我自己学习就采用Z ...

  8. 【Excel】VBA编程 01 入门

    视频地址: https://www.bilibili.com/video/BV1Q5411p71p 在Excel种需要打开[开发工具]和[启用所有宏]两点 打开开发工具选项 宏启用 菜单栏才会有开发工 ...

  9. 如何计算两个正太分布的KL散度 —— 正太分布的KL散度 (Kullback-Leibler divergence) 计算

    参考: https://blog.csdn.net/int_main_Roland/article/details/124650909 给出实现代码: def get_kl(): mean0, log ...

  10. python报错:`visualize_sharding` requires `rich` to be installed.

    Rich是python的一个绘图library,需要手动安装. 解决方法: pip install Rich