如何使用CSS获得最大屏幕宽度,而不是当前窗口宽度



问题

我只能找到显示如何使用vw/vh来获得窗口当前大小的答案,这不是我所需要的。

我实际需要的东西

我需要监视器屏幕的全宽,与是否最大化浏览器窗口无关。

有没有一种方法可以使用纯CSS来做到这一点?如果没有,可以使用JavaScript+CSS吗?如果是,如何?

CSS只能提供视口宽度,即窗口宽度。但是,您可以使用screen.width通过JavaScript获取屏幕宽度。

console.log(screen.width);

您想让标签的内容占据整个屏幕空间,还是想专门获得以像素为单位的高度和宽度值?如果这是第一种选择,我想我已经找到了解决方案。

* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
main {
background: blue;
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
<link rel="stylesheet" href="./style.css">
</head>
<body>
<main></main>
<script src="./script.js"></script>
</body>
</html>

另一种解决方法是使用窗口的innerWidth和innerHeight值

const width = window.innerWidth;
const height = window.innerHeight;
const main = document.querySelector("main");
main.style.width = `${width}px`;
main.style.height = `${height}px`;
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
main {
background: blue;
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
<link rel="stylesheet" href="./style.css">
</head>
<body>
<main></main>
<script src="./script.js"></script>
</body>
</html>

使用的参考:https://tutorial.tips/how-to-get-viewport-width-and-height-using-javascript/

相关内容

  • 没有找到相关文章