例如,我有一个网页,其中包含使用css-grid
(divA
和divB
) 的多个 div。我也有 2 个显示器(物理屏幕)。
我想显示divA
到第一台显示器和divB
第二台显示器。
我正在寻找以下问题的答案:
- 如何定位
divA
在第一台显示器和divB
第二台显示器上(响应式)? - 请问有什么模拟器可以在单个显示器上操作双屏来测试这个场景吗?
非常感谢任何帮助或建议。
谢谢,阿什温
例如,我有一个网页,其中包含使用css-grid
(divA
和divB
) 的多个 div。我也有 2 个显示器(物理屏幕)。
我想显示divA
到第一台显示器和divB
第二台显示器。
我正在寻找以下问题的答案:
divA
在第一台显示器和divB
第二台显示器上(响应式)?非常感谢任何帮助或建议。
谢谢,阿什温
将您的屏幕分辨率修改为半高和全宽。
无意冒犯,但这就像你试图打破这里的第四面墙。
我可能弄错了,但只有操作系统知道双显示器的存在。因此,当您在这些监视器上扩展浏览器时,浏览器不会意识到它占用的监视器,只是它window.screen.width
比正常情况大。
因此,从技术上讲,由于我们的 HTML 元素在浏览器中运行,我们不应该能够准确地检测到每个显示器上的屏幕区域。
另一方面,我们如何使用两个不同的浏览器窗口呢?例如使用 javascript 打开一个新窗口
var secondWindow = window.open("<url of another page>");
然后在第二个窗口上,您可以将它拖到另一个屏幕上,显示另一个<div>
,以便每个窗口占据每个屏幕,因此<div>
每个屏幕上有 2 个。
然后,为了协调两个窗口之间的交互/动画。通过secondWindow
orwindow.opener
对象来做。
// on the first window, you can call javascript function on second window
secondWindow.doSomething();
// on the second window, you can call javascript function on the first window
window.opener.doSomething();
注意:上述示例仅适用于两个页面托管在同一域下的情况。否则,您将需要依靠postMessage
API 在两个窗口之间进行协调。
将您的浏览器作为一个页面在两个显示器上打开,您可以使用Brett Parsons的答案或使用 50% 的视口宽度的旧样式来完成,如下所示:
CSS:
divA, divB {
width:50vw; /* Both div's will take 50% of the full page width */
}
但正如 Brett 所指出的,大多数在线用户不会在两个显示器上打开他们的页面,也就是说,如果他们中的大多数人实际上都在使用双显示器的话。
除非我完全误解了您的意图,否则您对多台显示器无能为力。用户必须将浏览器分散在两个监视器上,这是不太可能的。你可以做的是使用 CSS Grid。
.wrapper {
width: 100vw;
display: grid;
grid-template-columns: repeat(2, 50%);
}
<div class="wrapper">
<div class="div-a">
</div>
<div class="div-b">
</div>
</div>
我相信你知道如何做到这一点。这是假设监视器的大小相同。我试图了解您在这里想要实现的目标。