我正在构建我的网站的移动版本,此时,创建备用样式表就足以使该网站适合移动设备。我想使用用户代理检测PHP脚本来检测平台,并相应地切换样式表。有没有办法做到这一点?
答案 0 :(得分:3)
你可能想尝试一个librabry来检查它是否是一个移动设备然后你可以尝试这个库:http://code.google.com/p/php-mobile-detect/(这也支持检测特定的操作系统)
然后有像
这样的代码if($detect->isiOS()){
echo <link rel="stylesheet" type="text/css" href="iOSstyle.css" />;
}
else if ($detect->isMobile()) {
echo <link rel="stylesheet" type="text/css" href="mobile.css" />;
}
else{
echo <link rel="stylesheet" type="text/css" href="normal.css" />;
}
仅供参考,这些库也依赖于标题和其他标题中的User-Agent值。
答案 1 :(得分:1)
尝试这个(if-condition以伪代码编写,因为我没有使用过WURLF):
<?php
if (device is mobile) {
echo "<link rel='stylesheet' type='text/css' href='mobile.css' />";
}else{
echo "<link rel='stylesheet' type='text/css' href='monitor.css' />";
?>
将此代码放在通常有CSS链接的位置。
答案 2 :(得分:0)
我之前所做的是将当前状态(移动/桌面)存储在会话变量中。然后,您可以使用“查看桌面/移动版本”链接来切换会话变量。渲染每个页面时,在会话变量上使用if语句来确定要显示的样式表。我建议你将这个逻辑分成一个重用函数,这样你在重构时就不必编辑20个不同的页面。
如果您想自动检测移动浏览器,可以使用WURLF或php-mobile-detect。