html - 使用 float 时 Div 折叠

标签 html css

<分区>

我有以下 HTML,我想在按钮和文本后面显示蓝色背景。不幸的是,使用以下代码,蓝色背景消失了。如果我删除 ids 按钮和文本的 CSS,背景又回来了。

我做错了什么?

谢谢!

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>Untitled Page</title>
    <style>


    #actions
    {
        background: blue;
    }

    #buttons
    {
        float: left;
    }

    #text 
    {
        float: right;
    }

    </style>
</head>
<body>

        <div id="actions">
            <div id="buttons">
                <input type="button" id="btnOne" value="Bla bla" />
                <input type="button" id="btnTwo" value="Bla bla bls" />
            </div>
            <div id="text">Bla bla bla</div>
        </div>

</body>
</html>

最佳答案

你必须“清除”你的花车。 float 元素将它们带出页面的正常 block 定位,因此向右浮动的元素会脱离父容器,折叠 div。你可以清除它们,或者更简洁巧妙的方法是在父容器中添加'overflow: auto':

#actions
{
    background: blue; overflow: auto;
}

#buttons
{
    float: left;
    overflow: hidden;
}

#text 
{
    float: right;
    overflow: hidden;
}

由于“overflow: auto”在某些情况下会产生滚动条,我通常通过在子元素上指定“overflow: hidden”来明确防止这种情况。根据我的经验,这很可靠。

关于html - 使用 float 时 Div 折叠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/639925/

相关文章:

javascript - JS 规则在悬停时影响 2 个单独的链接

html - 如何只给thead单元格间距?

jquery - 文本选择禁用

javascript - 浏览器中的 GPU 加速数学

html - 空间满时 CSS 换行

javascript - 如何在 DOM 之外设置 HTML 元素的样式?

html - 如果前一个元素包含图像,则行内 block 元素移至底部

html - 如何拥有一组按钮,效果类似 Accordion ,一次只显示一个下拉菜单?

javascript - 使用屏幕分辨率更改 HREF 中的 URL 作为测试

html - 如何从链接打开图库?