媒体查询两种方法:
css方式
@media screen and (max-width: 600px) {
/*当屏幕尺寸小于600px时,应用下面的CSS样式*/
.class {
background: #ccc;
}
}
/*当屏幕尺寸大于900px时,应用下面的CSS样式*/
@media screen and (min-width: 900px) {
.class {
background: #fff;
}
}
注意下顺序,如果你把@media (min-width: 768px)写在了下面那么很悲剧,
- @media (min-width: 1200){ //>=1200的设备 }
- @media (min-width: 992px){ //>=992的设备 }
- @media (min-width: 768px){ //>=768的设备 }
因为如果是1440,由于1440>768那么你的1200就会失效。
所以我们用min-width时,小的放上面大的在下面,同理如果是用max-width那么就是大的在上面,小的在下面
- @media (max-width: 1199){ //<=1199的设备 }
- @media (max-width: 991px){ //<=991的设备 }
- @media (max-width: 767px){ //<=767的设备 }
link方式
link方式是直接在link中判断设备的尺寸,然后引用不同的css文件:
<link href="styleA.css" media="screen and (min-width: 400px)" rel="stylesheet" type="text/css">
意思是当屏幕的宽度大于等于400px的时候,应用styleA.css
使用方法: @media 多媒体类型 and (条件) and (条件)…
多媒体类型
all
用于所有多媒体类型设备
print
用于打印机
screen
用于电脑屏幕,平板,智能手机等
speech
用于屏幕阅读器
条件
max-width: 输出设备中页面最大可视区域宽度,小于这个width时,其中的css生效
min-width: 输出设备中页面最小可视区域宽度,大于这个width时,其中的css生效
max-height:输出设备中页面最大可视区域高度
min-height: 输出设备中页面最小可视区域高度
属性
在media属性里:
screen 是媒体类型里的一种,CSS2.1定义了10种媒体类型
and 被称为关键字,其他关键字还包括 not(排除某种设备),only(限定某种设备)
(min-width: 400px) 就是媒体特性,其被放置在一对圆括号中。
<link rel="stylesheet" type="text/css" href="styleB.css" media="screen and (min-width: 600px) and (max-width: 800px)">
常用的:
- 小于768的
- 768px
- 768和992之间的
- 992px
- 992和1200间的
- 1200px
- 大于1200
bootstrap的断点值:Bootstrap 是移动设备优先的
/* 小屏幕(平板,大于等于 768px) */
@media (min-width: 768px) { ... col-sm-3... }
/* 中等屏幕(桌面显示器,大于等于 992px) */
@media (min-width: 992px) { ... col-md-3...}
/* 大屏幕(大桌面显示器,大于等于 1200px) */
@media (min-width: 1200px) { ... col-lg-3...}
总结
顺序不能反@media (max-width: 767px) { ... col-xs-3... } { //<=767的设备 } 手机
@media (min-width: 768px) { ... col-sm-3... } { //>=768的设备 } 平板
@media (min-width: 992px) { ... col-md-3...} { //>=992的设备 } 电脑
@media (min-width: 1200px) { ... col-lg-3...} { //>=1200的设备 } 大显示器