一個「理論」的CSS問題。誰是這個絕對位置元素的參考:浮動父母還是絕對祖父母?
我想有某種澄清,什麼是應該在這種情況下發生......
這裏是我的HTML summmed後續版本...
<div id="some_navbar">
<ul>
<li id="plain_li"><a href="#">HELLO</a></li>
<li id="dropdown_li"><a href="#">GOODBYE</a>
<ul>
<li><a href="#">FOR NOW</a></li>
<li><a href="#">FOR GOOD</a></li>
</ul>
</li>
</ul>
</div>
這是我的樣式表
#some_navbar {
position: absolute; /* A positioned ancestor does exist. */
top: 0.75em;
right: 1.5em;
}
#some_navbar li,
#some_navbar a {
display: block;
}
#some_navbar ul {
list-style-type: none;
}
#some_navbar > ul {
margin: 0;
padding: 0;
border: 0;
overflow: hidden;
}
#some_navbar > ul > li {
float: right;
margin: 0;
padding: 0.75em 1.5em;
border: 1px solid grey;
}
#dropdown_li > ul {
display: none;
}
#dropdown_li:hover > ul {
display: block;
position: absolute;
top: 1em;
}
我read絕對表示「該元素相對於其第一個定位的(不是靜態的)祖先元素」定位。
那麼,這是否意味着我的最後選擇元件(#dropdown_li:hover > ul
)相對於它的浮動父li
定位(換句話說,不浮資格作爲在這個意義上定位)或其也絕對定位的偉大祖父母(#some_navbar
)?
晶瑩剔透的解釋。正是我所希望的。 –