在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML/ 浮動的子元素清除了浮動依舊無法撐開父元素

浮動的子元素清除了浮動依舊無法撐開父元素

請教各位一個css的問題,搞不懂這個demo里的ul的寬度為什么沒有自適應(yīng)變寬。發(fā)現(xiàn)把div去掉浮動或都去掉相對定位的話,ul就可以自適應(yīng)變寬。但還是不知道什么原因?qū)е逻@樣。因為就是需要ul的父級既是浮動又是相對定位。

就是想知道li 為什么沒排成一行。雖然我知道給ul加固定寬度就能水平排列。但是如果頁面里僅有這個ul和li,而ul是絕對定位,li浮動的話,ul不設(shè)寬度li也照樣能橫過來的。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
*{margin: 0;padding: 0;}
div{

position: relative;
float: left;
margin-left: 20px;
border: 1px solid #000;

}
ul{

position: absolute;
list-style: none;

}
ul::after{

content:"";
display: block;
clear:both;

}
ul li{

float: left;

}
</style>
</head>
<body>

<div>
    <p>這是第一行文字</p>
    <ul>
        <li>這是第二行文字</li>
        <li>這是第三行文字</li>
    </ul>
</div>

</body>
</html>

回答
編輯回答
茍活

剛剛發(fā)現(xiàn)優(yōu)酷里那些定位的hover二級菜單都是有寬度的。算了,以后我也加寬度吧。雖然還是不太清楚什么原因,但總之貌似只要絕對定位標(biāo)簽的父級除了定位外,還有浮動的話,那么定位的子元素就必須加寬度。就這么記了。

2018年5月23日 19:05
編輯回答
影魅

大哥,你用了絕對定位高度就沒有了啊,不占位了

2017年3月22日 21:05
編輯回答
瞄小懶

浮動的div寬度是靠內(nèi)部元素的寬度撐開的,不是按照父元素的寬度來的,絕對定位也一樣

2017年6月9日 00:14