我想要在容器div内部的div变高时获取驻留在容器div中的div来缩放容器div高度。当容器内的div高度比容器本身高时,它只是移过容器的底部。我想让容器按照包含的div进行缩放。我如何在CSS中做到这一点?使用包含的div高度来缩放容器div
2
A
回答
1
你只需要通过百分比,如给予高度属性:
percent { display:block:height:100%; } as your div stands in html:
<div class="percent"></div>
7
格雷厄姆。你所描述的是DIV的缺省行为,或者是这个问题的任何块元素。例如以下HTML:
<style type="text/css">
dl { margin: 0; padding: 0;}
#container {
background-color: blue;
padding: 5px 5px 5px 5px;
}
#inner {
background-color: red;
}
</style>
<div id="container">
<div id="inner">
<dl>
<dt>Stuff</dt>
<dd>Blah blah blah</dd>
<dt>Foobar</dt>
<dd>Bazquux</dd>
</dl>
</div>
</div>
你会得到以下渲染HTML:
Basic Div http://c0180871.cdn.cloudfiles.rackspacecloud.com/normal.png
你描述当div容器不会扩展到包含内部DIV的情况,当你有发生浮动内部股利。根据定义,浮动将块元素从其包含元素的约束中分离出来。应用“float:left;”您#inner元件给出以下:
alt text http://c0180871.cdn.cloudfiles.rackspacecloud.com/floated.png
的解决方案是在内含div在清零浮动元件的底部添加一个块级元素。这会导致包含div包围这个新的块级元素,因此也包含您的浮动元素。
例如
<style type="text/css">
dl { margin: 0; padding: 0;}
#container {
background-color: blue;
padding: 5px 5px 5px 5px;
}
#inner {
background-color: red;
float: left;
}
</style>
<div id="container">
<div id="inner">
<dl>
<dt>Stuff</dt>
<dd>Blah blah blah</dd>
<dt>Foobar</dt>
<dd>Bazquux</dd>
</dl>
</div>
<div style="clear: both;"></div>
</div>
这将使输出与第一张图像相同。
显然,这可以添加到您的div容器底部的繁琐的事情,如果你做了很多浮动的。
使用CSS2你可以用一个简单的类定义(和当然的IE浏览器黑客)做到这一点:
<style type="text/css">
dl { margin: 0; padding: 0;}
#container {
background-color: blue;
padding: 5px 5px 5px 5px;
}
.clearfix:after {
content: ".";
display: block;
height: 0;
clear: both;
visibility: hidden;
}
* html .clearfix {height: 1%;}
#inner {
background-color: red;
float: left;
}
</style>
<div id="container" class="clearfix">
<div id="inner">
<dl>
<dt>Stuff</dt>
<dd>Blah blah blah</dd>
<dt>Foobar</dt>
<dd>Bazquux</dd>
</dl>
</div>
</div>
的clearfix类简单地添加到任何包含浮动元素的div容器。请注意,“* html”是IE所要求的破解。
1
只需添加
overflow: auto;
到外层div。
0
如果你的意思是“规模化”为只是单纯的扩大,也许我看了你的描述为具有,比如说,500像素的高度div容器,如果他们长得过大所包含的div将推动这个更多。在这种情况下,也许你可以使用最小高度?
min-height: 500px;
如果表示“标度”作为在容器的div是500x500px,所包含的占用的200像素的初始高度展开至400像素与更多的内容,其推动容器div来1000x1000px(类似于缩放/放大),那可能会更复杂。
相关问题
- 1. 制作DIV容器盖包含DIV的高度
- 2. 固定高度的div容器,高度灵活的div内容
- 3. 使用变换转换和缩放使用div缩放容器
- 4. 缩放div但保持它包含在一定的宽度和高度
- 5. 如何缩放包含SVG的div?
- 6. 使容器div为一个子div的高度,并使容器的其他子div高度为
- 7. 动态DIV容器高度
- 8. CSS:包含div上的自动高度,包含div的背景div上的100%高度
- 9. 缩放div宽度
- 10. 我如何使父容器调整它的高度以匹配缩放的div
- 11. 使包装div延伸到与内容div相同的高度
- 12. 使内容(div/images)限制包含div的最小宽度
- 13. 如何将我的div高度缩放到相邻的div高度?
- 14. 如何将div容器围绕其他div容器包装,高度为:auto;
- 15. Div应该包含100%屏幕高度
- 16. Div在包含div的全高(背景)
- 17. 将高度设置为100时Div缩放至内容
- 18. 如何使用jquery缩放div内容?
- 19. 包含其他div的div没有合适的高度
- 20. 如何使浮动的div容器适合div高度?
- 21. 如何为包含的内容制作div调整高度?
- 22. div高度:100%包装内容
- 23. Div:包围div的高度100%
- 24. 如何让DIV占用容器div的其余高度?
- 25. 将div的宽度调整为包含多个div的内容
- 26. Div高度100%的内容
- 27. 使用div缩放图像,其子设置高度
- 28. jQuery/CSS缩放div内容
- 29. 根据容器调整“div”的高度
- 30. 子div的高度溢出父容器
这并没有解决他的问题,这是不幸的,因为你似乎付出了相当大的努力。在#container上放上500px的高度,你就会意识到。 – 2009-08-06 19:26:05
不知道我是否理解他的问题。没有代码的问题=可以解释。 – hobodave 2009-08-06 19:56:51
我个人最喜欢的解决方案是在浮动元素的末尾添加一个清除元素。如果在结束将正确设置其高度的容器之前添加
。不必使用任何CSS黑客,但它确实会为HTML添加额外的元素。 – dmertl 2009-08-06 22:43:38