我希望能够调整窗口大小,同时我的div保持在页面上的位置并调整为我声明的宽度和高度的百分比。
HTML:
<body>
<div class="view">
<div class="Tree">
<img id="tree" src="img/tree.png">
</div>
<div class="Ground">
<div class="g"></div>
</div>
</div>
</body>
CSS:
.Tree {
position: absolute;
}
.Tree #tree {
position: relative;
height: 75%;
width: 75%;
left: 30%; }
.Ground {
z-index: 2;
width: 100%;
height: 100%; }
.Ground .g {
background-color: green;
opacity: .5;
position: relative;
height: 50%;
width: 100%; }
树保持不变,但是当窗口最大时,它可以在我的macbook上,它向左滑动一点。地面元素垂直占据了页面的一半,而我希望它只能从顶部放置50%。当我尝试应用顶级&#39;任何一种风格都没有发生。我知道这是因为#tree是相对的.Tree而我并没有声明高度/宽度。我没有声明h / w,因为它会让我的#tree图像关闭。
感谢您的帮助!
编辑,补充说明:
我希望div根据窗口宽度调整大小。我不希望他们改变他们的左派。我希望能够设置一个顶级的&#39; %,因为我现在不能。
小提琴:https://jsfiddle.net/sqdgzbp6/
在本网站上注意:anniwang.com如果您调整整个窗口的大小,图纸似乎也会调整大小但是它们不会在页面上放松。我想重新创造一种类似于她的效果。
答案 0 :(得分:1)
根据它的声音,当你之前设置的大小为50%时,你希望div停止调整大小。请记住,这只是窗口屏幕的50%,因此无论窗口有多大或多小,它总是可以扩展到您正在查看的任何内容的50%。如果您想要修复它,可以使用500px
,因为它设置为固定的500,所以它不会移动。
希望这有帮助。
答案 1 :(得分:1)
由于.Tree
是一个绝对定位的元素,它需要明确设置高度/宽度,否则没有百分比的孩子将有任何东西来计算它们的百分比,所以在这个样本中我给它一个高度,现在top
可以使用。
.Tree {
position: absolute;
height: 100%;
width: 100%;
}
#tree {
position: relative;
height: auto;
width: 60%;
left: 30%;
top: 20%;
}
.Ground {
z-index: 2;
width: 100%;
height: 100%;
}
.Ground .g {
background-color: green;
opacity: .5;
position: relative;
height: 50%;
width: 100%;
}
<div class="view">
<div class="Tree">
<img id="tree" src="http://www.placehold.it/200/100">
</div>
<div class="Ground">
<div class="g"></div>
</div>
</div>