【发布时间】:2012-12-16 10:19:58
【问题描述】:
所以我刚刚发现了视口单元,我真的很想使用它们。
第一个挑战:我的元素的“基本尺寸”为 760x670 像素。我想使用视口单位将其放大,以便高度为100vh,或宽度为100vw,以较小者为准。
不幸的是,虽然我可以使用100vmin 来获取两者中的较小者,但我只能将其应用于宽度或高度,而不是两者。
目前我正在使用:
#root {
width: 760px;
height: 670px;
width: 100vw;
height: calc(670vw/760);
}
这会缩放宽度以适应屏幕,从而实现垂直滚动。这还不错,但如果我真的可以让它适合视口,我会更喜欢它。
【问题讨论】:
-
我正在 Chrome 中进行测试。似乎
vw单位不能在calc内使用。我试过height: -webkit-calc(100vw/3)之类的东西。唯一同时支持calc和视口单元的其他浏览器是 IE10 和 Safari 6,它们都不能安装在我的平台(Windows 7)上。 -
顺便说一句,这应该可以通过媒体查询实现,因为您可以根据纵横比分支代码,例如
@media all and (min-aspect-ratio: 760/670) { ... }. -
这是一个WebKit bug。所以忘记 Chrome/Safari。 Firefox/Opera 甚至不实现视口单元。看来 IE10 是唯一能理解您的代码的浏览器。
:) -
@ŠimeVidas 你可以对这两个 cmets 做出很好的回答。
-
@PavloMykhalov 我已经让它在 IE10 中工作。答案如下。
:-)
标签: css viewport viewport-units