是否有想法在页面全屏显示元素?
例如,div还是img?
使用“全屏”我的意思是它应该占用用户屏幕的所有空间,就像我们观看全屏模型的视频一样。我不希望显示浏览器窗口的任务栏/菜单栏。
有什么想法吗?
div.fullscreen{
display:block;
/*set the div in the top-left corner of the screen*/
position:absolute;
top:0;
left:0;
/*set the width and height to 100% of the screen*/
width:100%;
height:100%;
background-color:red
}
我已经尝试了上面的代码,但它不是我想要的,它可以占用浏览器内容区域的所有空间而不是用户的计算机屏幕。
答案 0 :(得分:4)
HTML元素不会突破浏览器文档窗口的范围。菜单和工具栏位于文档窗口之外(这是浏览器窗口的子窗口),因此您无法“到达”它们。
我认为唯一的解决方案是使用JavaScript触发全屏模式。
这个答案说明了如何做到这一点:How to make the window full screen with Javascript (stretching all over the screen)
答案 1 :(得分:2)
有一个相对较新的fullscreen JavaScript api可以使元素全屏显示。
必须根据用户输入调用它以防止可能的滥用,但使用相对简单:
来自MDN文章的代码:document.addEventListener("keydown", function(e) {
if (e.keyCode == 13) {
toggleFullScreen();
}
}, false);
function toggleFullScreen() {
if (!document.fullscreenElement && // alternative standard method
!document.mozFullScreenElement && !document.webkitFullscreenElement) { // current working methods
if (document.documentElement.requestFullscreen) {
document.documentElement.requestFullscreen();
} else if (document.documentElement.mozRequestFullScreen) {
document.documentElement.mozRequestFullScreen();
} else if (document.documentElement.webkitRequestFullscreen) {
document.documentElement.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT);
}
} else {
if (document.cancelFullScreen) {
document.cancelFullScreen();
} else if (document.mozCancelFullScreen) {
document.mozCancelFullScreen();
} else if (document.webkitCancelFullScreen) {
document.webkitCancelFullScreen();
}
}
}
答案 2 :(得分:0)
现在这是不可能的,而且可能永远不会。
想象一下,如果您访问的每个网站都有免费统治来接管您的桌面,会发生什么。