我正在构建我的网站的移动版本,此时,创建一个备用样式表就足以使该网站适用于移动设备。我想使用用户代理检测 PHP 脚本来检测平台,并相应地切换样式表。有没有办法做到这一点?
问问题
1184 次
3 回答
3
您可能想尝试一个库来检查它是否是移动设备,然后您可以尝试这个库: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" />;
}
FYI, these libraries are dependent on the User-Agent value in the header and other headers too.
于 2012-06-29T03:32:33.973 回答
1
试试这个(用伪代码编写的 if 条件,因为我没有使用过 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 链接的位置。
于 2012-06-29T03:31:38.317 回答
0
我之前所做的是将当前状态(移动/桌面)存储在会话变量中。然后你可以有一个“查看桌面/移动版本”链接来切换会话变量。渲染每个页面时,在会话变量上使用 if 语句来确定要显示的样式表。我建议您将此逻辑分离为一个函数以供重复使用,这样您就不必在重构时编辑 20 个不同的页面。
如果要自动检测移动浏览器,可以使用WURLF或php-mobile-detect。
于 2012-06-29T03:32:30.713 回答