【发布时间】:2017-03-01 02:45:44
【问题描述】:
我需要对页面进行一些缩放,并防止它在移动设备上显示键盘时关闭。它也应该适用于各种屏幕。为此,我使用视口元标记。我想出了一种解决方法,将初始比例、最大比例和最小比例固定为我在 JS 中计算的一个值。有没有办法计算这个值并在 CSS 中分配它?我可以并且应该从 css 访问元标记吗?我实际上已经尝试过这样做,但似乎没有用。代码如下:
JS:
if (screen.width<1024){
var a = screen.width/window.innerWidth;
var txt = "width=device-width, user-scalable=0, maximum-scale=" + a + ", minimum-scale=" + a;
document.getElementById("viewportMetaData").setAttribute("content", txt);
}
HTML:
<meta name="viewport" id="viewportMetaData" content="user-scalable=0">
CSS:
@media all and (max-width: 1024px) and (orientation: landscape) {
@viewport {
min-zoom: width/(100*vw);
max-zoom: width/(100*vw);
user-zoom: 0;
}
【问题讨论】:
-
您似乎不了解元标记在 HTML 中的作用。对它们应用 CSS 规则不会改变它们的属性。