2011-08-13 54 views
4

我猜,因为你可以做到这一点与媒体查询:检测屏幕宽度与CSS媒体查询

@media (min-width:500px) { … } 

,在某些时候或其他,在CSS样式表必须知道什么宽屏幕,SANS的JavaScript。

这是这种情况?

回答

7

您可以使用device-width这将测试屏幕的宽度在px。但是,这并不完全建议。改为使用max-widthmin-width(用于视口)。


如果你试图让屏幕的宽度,并用它(像某种content: (device-width);,这是不可能的。坚持用JavaScript。

Manual Reference

1

由于客户端浏览器的视口更改大小,浏览器将重新绘制可见区域。在那时,浏览器将检查是否存在与新视口相关的媒体查询样式。

CSS并不真正知道浏览器视口的宽度,浏览器知道什么CSS适用于特定的视口。

+0

嗯,谢谢你的详细答案,所以一个CSS唯一的解决方案来抓屏幕大小是不是不行? – benhowdle89

+0

媒体查询的好处是您可以对视口的特定属性作出反应,因此,虽然无法确定其确切大小,但您可以通过预测和计算处于特定预期边界内的视口来调整内容的表示。 – Chris

+0

你可能会发现http://www.alistapart.com/articles/responsive-web-design/是一个信息阅读。 – Chris

0

嗯...

@media(width:1024px){ 
    p#id:after{ 
    content:"1024px"; 
    } 
} 

如果视口的宽度是1024像素,则会在显示后显示文本“1024px”指定的< p>元素。您可以(假设)放置数千个这样的CSS块来显示视口的宽度,以获取其宽度的任何合理值。 (请注意,文本不是在某些浏览器选择。)

你知道的越多...(请不​​要真正做到这一点)

1

在HTML - >

<meta name="viewport" content="width=device-width">

OR

在CSS - >

@viewport { 
 
    width: device-width; 
 
    }

希望它帮助。