注册 登录
编程论坛 WEB前端(UI)

为什么把div里的元素设为浮动,background就没了?也就是div的height不随子级元素增大?

szchina 发布于 2013-03-09 14:19, 1411 次点击
为什么加了ul{float: left;},div的background就失效了?我想知道原理。谢谢
<html>
<head>
<style type="text/css">
div{width: 80%;background: blue;}
ul{float: left;}
</style>
</head>
<body>
<div>
<ul><a href="#">首页</a></ul>
<ul><a href="#">DIV+CSS</a>
<li><a href="#">DIV1</a></li>
<li><a href="#">DIV2</a></li>
<li><a href="#">DIV3</a></li>
<li><a href="#">DIV4</a></li>
</ul>
3 回复
#2
死神之吻2013-03-18 19:46
div代表一块了固定位置,你给他设置了颜色,但是当它的子元素出现浮动属性之后 虽然div还是其父元素 但是ul却不继承DIV的背景颜色属性!
#3
诸葛修勤2013-05-04 15:29
流媒体
程序代码:
<html xmlns="http://www.>
    <head>
    <style type="text/css">
        body
{
            margin
: 0px;
            padding
: 0px;
        
}
        div
{
            margin
: 0px auto;
            padding
: 5px;
            width
: 900px;
            background
: #ccc;
            height
: auto;
            overflow
: hidden;
            border
: solid 1px yellow;
        
}
        ul
{
            float
: left;
            list-style
: none;
        
}
        a
{
            text-decoration
: none;
        
}
        li
{
            float
: left;
            padding-left
: 10px;
        
}
   
</style>
    </head>

    <body>
        <div>
            <ul><a href="#">首页</a></ul>
            <ul>
                <li><a href="#">DIV1</a></li>
                <li><a href="#">DIV2</a></li>
                <li><a href="#">DIV3</a></li>
                <li><a href="#">DIV4</a></li>
            </ul>
        </div>
    </body>
</html>

 
#4
huangyong2013-11-29 22:34
</ul>标签后面加一个<div style="clear:both;"></div>清除浮动
1