我遇到了一个非常令人沮丧的问题。我正在努力创建一个位于<ul>
. 当嵌套<div>
在表格中display: {fixed,absolute}
时,空格占位符会显示在另一个表格单元格的位置。我不明白为什么或如何绕过它。
代码的 CodePen 在这里:http ://codepen.io/quicksnap/pen/gsHrb你可以切换最顶层的类来看看我在说什么。
了解有关为什么或如何保留此标记结构并使其显示固定/绝对而不更改父表显示的任何见解。
标记:
<ul>
<li>
<a href=""><span>Lorem</span></a>
</li>
<li>
<a href=""><span>Lorem</span></a>
</li>
<li>
<a href=""><span>Lorem</span></a>
</li>
<li>
<a href=""><span>Lorem</span></a>
</li>
<div class="fixed"/>
</ul>
CSS:
/*
Why does the display: table show an empty placeholder for
an element inside that is position: fixed/absolute?
*/
/* Comment out/remove !important to see bug */
.fixed { display: none !important; }
.fixed {
display: block;
position: fixed; top: 60px; left: 0;
width: 100%; height: 100px;
background: salmon;
}
ul {
padding: 0;
margin: 0;
width: 100%;
height: 60px;
display: table;
table-layout: fixed;
position: relative;
background: #ccc;
}
ul > li {
display: table-cell;
text-align: center;
vertical-align: middle;
}