CodeIgniter-根据屏幕大小显示视图

CodeIgniter-根据屏幕大小显示视图,codeigniter,responsive-design,Codeigniter,Responsive Design,我正在用CodeIgniter框架构建一个响应性强的站点,我遇到了一个问题,希望有人能帮我解决 网站本身本质上是一种通过大型信息数据库进行搜索的手段,并将结果以良好的格式显示在表格中 由于手机屏幕空间不足,这些设备上的搜索词和搜索结果将减少到20+个搜索词和搜索结果中的3个,而这20+个搜索词和搜索结果将在完整的桌面浏览器上可用,这意味着数据库中只有三个字段将在这些较小的设备上搜索并返回给用户 无论如何,我知道如何使用媒体查询来响应页面的样式,但是有没有办法根据设备的屏幕大小来实际构建搜索表单的

我正在用CodeIgniter框架构建一个响应性强的站点,我遇到了一个问题,希望有人能帮我解决

网站本身本质上是一种通过大型信息数据库进行搜索的手段,并将结果以良好的格式显示在表格中

由于手机屏幕空间不足,这些设备上的搜索词和搜索结果将减少到20+个搜索词和搜索结果中的3个,而这20+个搜索词和搜索结果将在完整的桌面浏览器上可用,这意味着数据库中只有三个字段将在这些较小的设备上搜索并返回给用户

无论如何,我知道如何使用媒体查询来响应页面的样式,但是有没有办法根据设备的屏幕大小来实际构建搜索表单的内容

例如,我看到它的工作原理有点像这样:

  • 用户导航到搜索页面
  • Page检测到他们在手机上
  • 页面的搜索条目表单只包含3个字段
  • 或者如果它们位于桌面浏览器上:

  • 用户导航到搜索页面
  • 页面检测到它们位于桌面浏览器上
  • 页面的搜索条目表单包含完整的20多个字段
  • 我希望这有点道理。 “那平板电脑呢?”你可能会问,它们也会得到满足,但它们将提供多少搜索字段还没有决定

    所有的想法和建议都受到了感激。
    Tony。

    我认为可以通过java脚本/HTML/CSS进行检测(只是我认为…不确定其他选项)

    而且,这可以解决所有问题。 不需要使用CI

    http://modernizr.com/
    
    更多的选择是可观的。:)

    您可以使用来检测用户在访问您的网站时是否正在使用手机


    当然,这有一些缺点,但如果用户正在使用移动设备,您可以识别服务器端。我看到的最大缺点是:如果用户使用的是一个不知名的用户代理,实际上是一部移动电话,那么您将为他提供20个字段,而不是3个字段。

    使用CSS3,您不需要执行用户代理或modernizer

    比如:

    @media screen and (max-width: 360px) {
      table td:nth(4n) { display: none; }
    }
    

    应该能给你你需要的。您也可以将其更改为@media mobile。。。。看看它是否也能接受,但鉴于不同的设备有不同的屏幕宽度,我更喜欢这样做。

    谢谢你的回复@bram。我同意您的看法,最大的缺点是依赖config/user\u agents.php文件中的设备列表。它总是有可能过时。如果这是唯一的服务器端解决方案,但是我可能没有什么选择。。。再次感谢。