移动设备上的媒体查询@media

如何使用Media Queries媒体查询:

(1)<head>里边

<link rel="stylesheet" type="text/css" href="xxx.css" media="only screen and (max-device-480px)">

(2)style 里边

@media only screen and (max-device-480px){/*css样式*/}

【注意事项】:上面的两种写法都是针对老版iphone的解决方案(320x480的解决方案)

(一)iOS 设备

1. iPhone 4

iPhone4上你就不能使用device-height或者device-width来设置媒体查询的条件,因为iPhone4的屏幕大小也是320x480的,跟老版本的iPhone和iPod是一样的。iPhone 4上的像素密集程度是两倍于我们视网膜的呈现的,所

以在iPhone 4设备上要呈现出来的话需要两倍于我们眼睛实际看到的尺寸的图片(也就是我们通常所说的高清晰 图标的效果)。要实现这个效果,不能用height或者width,而要使用属性-webkit-min-device-pixel-ratio这个属性。不过,需要提醒的一点,这里仅仅是针对webkit内核的浏览器,所以在其他内核的浏览器上不适用哦。使用方法如下:

@media only screen and (-webkit-min-device-pixel-ratio:2){/*针对iphone4的css样式*/}


2. iPhone 3 和 iPod(320x480像素的解决方案)
@media only screen and (max-device-480px){/*针对iPhone 3和iPod的css样式*/ }

3.iPad

iPad上要使用device-width而不是max-device-width,并且可以设置横屏和竖屏模式
@media only screen and (device-768px){/*针对ipad的css样式*/}

@media only screen and (min-device-481px) and (max-device-1024px) and (orientation:portrait){/*ipad竖屏的css样式*/}

@media only screen and (min-device-481px) and (max-device-1024px) and (orientation:landscape){/*ipad横屏的css样式*/}

 /* 判断ipad */

@media only screen

and (min-device-width : 768px)

and (max-device-width : 1024px){

/* style */

}

/* ipad横屏 */

@media only screen

and (min-device-width : 768px)

and (max-device-width : 1024px)

and (orientation : landscape){

/* style */

}

/* ipad竖屏 */

@media only screen

and (min-device-width : 768px)

and (max-device-width : 1024px)

and (orientation : portrait){

/* style */

}

/* 判断iphone5 *//* 横屏竖屏判断方法与ipad一样 */

@media only screen

and (min-device-width : 320px)

and (max-device-width : 568px){

/* style */

}

/* 判断iphone4-iphone4s *//* 横屏竖屏判断方法与ipad一样 */

@media only screen

and (min-device-width : 320px)

and (max-device-width : 480px){

/* style */

}

/* iphone5分辨率 */

screen Width = 320px (css像素)

screen Height = 568px (css像素)

screen Width = 640px (实际像素)

screen Height = 1136px (实际像素)

Device-pixel-ratio:2

/* iphone4-iphone4s分辨率 */

screen Width = 320px (css像素)

screen Height = 480px (css像素)

screen Width = 640px (实际像素)

screen Height = 960px

(二)Android设备

Android设备最奇妙也是最让人头疼的地方就是支持太多的屏幕显示尺寸。在某种意义上,对手持设备的制造厂商来说肯定是件好事,但是可苦了图形设计师们了。设计师们不得不做好几种尺寸的图片来满足最大众的需求。当然这也是兴趣所在了。长话短说,Android设备上可以创建三种不同密度的图片:low、media和high。创建这三种效果的图片可以使用如下的媒体查询方式:

@media only screen and (-webkit-device-pixel-ratio:.75){/*低分辨率小尺寸的图片样式*/}
@media only screen and (-webkit-device-pixel-ratio:1){/*普通分辨率普通尺寸的图片样式*/}
@media only screen and (-webkit-device-pixel-ratio:1.5){/*高分辨率大尺寸的图片样式*/}

(三)Windows Phone 7
到这篇文章为止,Windows Phone 7的媒体查询是受限制的,参见这里,在WP7上你不能使用initial-scale, maximum-scale,minimum-scale这些属性,因为在所有的WP7设备上都会显示是320px的宽度。但是不要气馁,其实我们还是可以在WP7上使用媒体查询的,只要如下的写法就可以了:

<!--[if IEMobile 7]><link rel="stylesheet" type="text/css" href="xxx.css" media="screen"><![endif]-->

未来太远,珍惜现在 放下过去,把握现在 失去的或错过的都不是你对的人,不用惋惜,不要纠缠 总要做些什么让感情保温。
原文地址:https://www.cnblogs.com/zshh/p/5411949.html