有没有办法使用PHP加载备用样式表?

时间:2012-06-29 03:18:41

标签: php css mobile stylesheet alternate

我正在构建我的网站的移动版本,此时,创建备用样式表就足以使该网站适合移动设备。我想使用用户代理检测PHP脚本来检测平台,并相应地切换样式表。有没有办法做到这一点?

3 个答案:

答案 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个不同的页面。

如果您想自动检测移动浏览器,可以使用WURLFphp-mobile-detect

相关问题