CSS容器DIv高度.浮动DIV问题

前端之家收集整理的这篇文章主要介绍了CSS容器DIv高度.浮动DIV问题前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
你能强制容器DIV高度容纳两个漂浮的div孩子吗?有没有一个奇特的技巧可以用来做到这一点?我想在父div中制作两个大小相等的div.我希望它们并排出现,它们之间有一点空白. Child2往往弹出并低于Child1.注意Child2包含一个表.我应该漂浮吗?

HTML

<div id="parent">
  <div id="child1"></div>
  <div id="child2">
    <table><tr><td>content</td></tr></table>
</div>
</div>

CSS:

div#parent
{
    background-color: #C6E4E0;
    border: solid 3px #017E6F;
    font-family: Arial;
    font-size: 10pt;
    font-weight: bold;
    padding-left: 5px;
    padding-right: 5px;
    width:99%;
}

div#parent div
{
    width:49%;
    float:right;  
    padding:3px;  
}

div#parent div:first-child
{
    float:left;
}

解决方法

这不是一个明确的问题家伙,他的问题是他的两个浮动div没有并排出现.

首先,你不需要设置父div的宽度,div是块元素,这意味着它们会自动调整它们的宽度以占据其父元素的整个宽度(在这种情况下,可能是div的父元素#parent是身体).

因为您正在明确设置宽度并给它填充,所以它可能会延伸到身体的BEYOND.这并不重要,但是如果你将这些相同的知识应用于孩子浮动的divs,你就会明白为什么正确的人可能会被撞到底部.

首先,如果您明确地将div的宽度设置为百分比,则无需添加填充.因为您正在处理百分比宽度,所以最好将填充添加到div的内容而不是div本身,因为填充是添加到宽度.因此,如果向100px父级中宽度为49%的div添加10px填充,则其宽度为49px 10px 10px(2边),总计算宽度为69px.

由于您没有发布您的标记内容或您正在测试的浏览器,我无法确切地说为什么div被击倒了.有两种可能性.

>您正在使用IE,它允许表超出其父div,这将导致破坏.尝试将表格宽度明确设置为其父级的百分比或类似的值.> 49%宽度填充=大于[父宽度] – [left-div-width].这将导致它被撞倒,因为左div和右div对于父宽度而言太宽.

猜你在找的CSS相关文章