iPad CSS控制横屏/竖屏布局(Landscape/Portrait Modes)
使用不同的CSS控制布局
iPad\iPad2的分辨率是1024*768,同时iPad也支持横屏和竖屏。为了让内容更好的展现给用户,我们就需要在竖屏和横屏的布局上做不同的处理。
@media only screen and (max-device-width: 1024px) and (orientation:portrait) {
.landscape { display: none; }
}
@media only screen and (max-device-width: 1024px) and (orientation:landscape) {
.portrait { display: none; }
}
/* iPads (portrait and landscape) ----------- */
@media only screen
and (min-device-width : 768px)
and (max-device-width : 1024px) {
/* Styles */
}
/* iPads (landscape) ----------- */
@media only screen
and (min-device-width : 768px)
and (max-device-width : 1024px)
and (orientation : landscape) {
/* Styles */
}
/* iPads (portrait) ----------- */
@media only screen
and (min-device-width : 768px)
and (max-device-width : 1024px)
and (orientation : portrait) {
/* Styles */
}
通过上边样式的不同组合,即可实现对ipad中页面布局的控制。
使用媒体查询中的orientation属性来区别横屏和竖屏
<link rel="stylesheet" media="screen and (orientation:portrait)" href="portrait.css" />
<link rel="stylesheet" media="screen and (orientation:landscape)" href="landscape.css" />
补1:通过js前端识别是否是iPad设备
if(navigator.userAgent.match(/iPad/i)){ do something; }
补2:通过PHP后端识别是否是iPad设备
$isIPad = preg_match('/ipad/i', trim($_SERVER['HTTP_USER_AGENT']));
if ($isIPad) $device="ipad";
else $device="not-ipad";