javascript'screen.availWidth'的宽度是不是与CSS3媒体查询最大宽度相同?

时间:2012-12-15 16:41:57

标签: javascript css3 mobile media

我一直在尝试使用手机中的简单网页(请参阅底部有关浏览器等的说明)以及这两个媒体查询:

@media all and (max-width: 979px) { ... css setting a background color for a certain element
@media all and (min-width: 980px) { ... css setting another background color for the same element

979/980以上使用的值我通过实验找到了,即这些似乎是我的手机的价值,即如果我增加或减少这两个值,我会注意到另一个值被改为应用。

但是,我认为我不应该尝试找出这些边界值,而是认为我应该能够使用以下javascript:

 document.write('<br>your resolution is ' + screen.availWidth + ' , ' + screen.availHeight);

以上检测到的javascript宽度值超过百像素,不同于(854而不是979)媒体查询中实际工作的值。

所以,我的问题是如何可以使用JavaScript(或服务器双面码)找出装置宽度,随着媒体查询有用的值,考虑到“screen.availWidth”显然行不通(和“画面。宽度“既不起作用?”

我的手机是索尼爱立信Xperia Arc S,我使用的操作系统是Android 4.0.4。 我已经使用以下三种浏览器完成了这项实验: - Chrome 18.0.1025.166 - Firefox 14.0 - “Opera / 9.80版本/ 12.00”(不确定9.80的含义,但我猜版本是12.00,这个字符串是我从javascript'navigator.userAgent'获得的)

Chrome浏览器使用上述javascript显示这些宽度/高度值:480 x 854或854 x 480(取决于我是以纵向还是横向显示) Firefox浏览器显示与上面的Chrome相同的宽度/高度值。 Opera浏览器的横向宽度/高度为854 x 439,纵向为480 x 658。

但是,当尝试如上所述应用CSS3媒体查询时,所有这些浏览器似乎都使用值979而不是854.

0 个答案:

没有答案