2011-03-22 79 views
1

我一直在阅读关于“唯一”的关键字,但无法找到明确的答案。媒体查询:避免不必要的CSS /图像下载

我很想知道是否有一种方法,只使用CSS(而不是Javascript),以避免所有不理解媒体查询的旧浏览器(例如旧手机)和确实了解媒体查询的现代浏览器,为他们返回false(例如查看最小设备宽度740px的智能手机)读取链接的CSS文件并下载相关的大背景图像。我担心加载时间和带宽。

如果这是不可能的,我想我会使用http://www.handsetdetection.com/features/mobile-browser-detectionhttp://www.hand-interactive.com/resources/detect-mobile-php.htm(服务器端解决方案)有条件地服务“全脂”样式表,其中包含可能只有740px及以上的设备宽度的较大图像,例。

回答

0

我敢肯定,你必须使用服务器端脚本进行检测,或JavaScript。但是如果你做服务器端,你可以根据你做什么或不想做什么显示你自己的样式表。

http://code.google.com/p/php-mobile-detect/

这可能是开始为PHP的预建库的好地方。

+0

更多的阅读之后,似乎(至少部分)现代浏览器不从没有在装货时应用媒体查询样式表下载的背景图像。但是,不管智能手机浏览器是否属于这种情况,我都不知道;我想我最终会转到服务器端,并根据设备类型提供不同的样式表,并将更小版本的图像发送到手机。 (但仍服务于同一页面。) – 2011-03-31 17:50:09

0

服务器端将是我的建议。您还可以使用cookie来存储会话剩余部分的数据,并可能在用户返回时存储数据。存储诸如访问者是否希望看到移动版或完整版等内容。你可以在.htaccess的apache级别测试它,使它非常高效。

Mobile Redirection is Platform Independent