如果高度与宽度都不固定呢
时间: 2024-02-29 09:52:35 浏览: 19
如果要在页面中间固定一个高度和宽度都不固定的 div,可以使用 CSS 的 `position` 属性和 `transform` 属性结合 JavaScript 动态计算 div 的宽度和高度来实现。具体地,可以先设置该 div 的 `position` 为 `fixed`,然后使用 JavaScript 动态计算该 div 的宽度和高度,并将其设置为 `transform` 属性的参数,将该 div 水平和垂直居中。例如,下面的代码可以实现这个效果:
HTML 代码:
```
<div id="myDiv">
<!-- div 的内容 -->
</div>
```
CSS 代码:
```
#myDiv {
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
```
JavaScript 代码:
```
var myDiv = document.getElementById("myDiv");
var width = myDiv.offsetWidth;
var height = myDiv.offsetHeight;
myDiv.style.transform = "translate(-50%, -50%) " + "scale(" + (1 / width) + "," + (1 / height) + ")";
```
这样,该 div 就可以在页面中间固定,并且高度和宽度可以自适应。需要注意的是,该方法需要该 div 的内容已经加载完成才能计算出宽度和高度。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![sql](https://img-home.csdnimg.cn/images/20210720083646.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![pptx](https://img-home.csdnimg.cn/images/20210720083543.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![7z](https://img-home.csdnimg.cn/images/20210720083312.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)