优点:无需插件和手机主题,对移动设备友好,能够适应各种窗口大小。只需在CSS中添加@media screen属性,根据浏览器宽度判断并输出不同的长宽值。
学习网址:https://blog.csdn.net/u013040887/article/details/79228093
CSS3 Media的写法
1、当页面宽度小于960px
@media screen and (max-width: 960px){
body{
background: #000;
}
}
2、当页面宽度等于960px
@media screen and (max-device-width:960px){
body{
background:red;
}
}
3、当页面宽度大于960px
@media screen and (min-width:960px){
body{
background:orange;
}
}
4、当页面宽度大于960px小于1200px(960px~1200px)
@media screen and (min-width:960px) and (max-width:1200px){
body{
background:yellow;
}
}
Media之所有参数汇总
-
width:浏览器可视宽度。
-
height:浏览器可视高度。
-
device-width:设备屏幕的宽度。
-
device-height:设备屏幕的高度。
-
orientation:检测设备目前处于横向还是纵向状态。
-
aspect-ratio:检测浏览器可视宽度和高度的比例。(例如:aspect-ratio:16/9)
-
device-aspect-ratio:检测设备的宽度和高度的比例。
-
color:检测颜色的位数。(例如:min-color:32就会检测设备是否拥有32位颜色)
-
color-index:检查设备颜色索引表中的颜色,他的值不能是负数。
-
monochrome:检测单色楨缓冲区域中的每个像素的位数。(这个太高级,估计咱很少会用的到)
-
resolution:检测屏幕或打印机的分辨率。(例如:min-resolution:300dpi或min-resolution:118dpcm)。
-
grid:检测输出的设备是网格的还是位图设备。
需要注意的地方
1、上面的代码中用到了screen,它的意思是在告知设备在打印页面时使用衬线字体,在屏幕上显示时用无衬线字体。但是目前我发现很多网站都会直接省略screen,因为你的网站可能不需要考虑用户去打印时。
2、注意下顺序,如果你把@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){ //<=768的设备 }
PC端按屏幕宽度大小排序
分辨率 比例 | 设备尺寸
1024x500 (8.9寸)
1024x768 (比例4:3 | 10.4寸、12.1寸、14.1寸、15寸)
1280x800 (比例16:10 |15.4寸)
1280x1024(比例:5:4 | 14.1寸、15.0寸)
1280x854 (比例:15:10 | 15.2)
1366x768 (比例:16:9 | 不常见)
1440x900 (比例:16:10 17寸 仅苹果用)
1440x1050(比例:5:4 | 14.1寸、15.0寸)
1600x1024(比例:14:9 不常见)
1600x1200(比例:4:3 | 15、16.1)
1680x1050(比例:16:10 | 15.4寸、20.0寸)
1920x1200(23寸)
通过上面的电脑屏蔽及尺寸的例表上我们得到了几个宽度
1024 1280 1366 1440 1680 1920
CSS代码
@media (min-width: 1024px){
body{font-size: 18px}
} /*>=1024的设备*/
@media (min-width: 1100px) {
body{font-size: 20px}
} /*>=1024的设备*/
@media (min-width: 1280px) {
body{font-size: 22px;}
}
@media (min-width: 1366px) {
body{font-size: 24px;}
}
@media (min-width: 1440px) {
body{font-size: 25px !important;}
}
@media (min-width: 1680px) {
body{font-size: 28px;}
}
@media (min-width: 1920px) {
body{font-size: 33px;}
}
网友评论