我需要将元素堆叠成网格/列结构,其中 1 在 2 之上,3 在 4 之上,等等。有没有更好的方法可以在不使用 javascript 并且仍然使用无序列表的情况下实现这一点?我所拥有的正在工作,但这似乎是实现这一目标的糟糕方法。
<style type="text/css">
#nav{
height:63px;
width:100%;
position:relative;
}
ul.topnav {
margin:0 0;
padding:0 0;
list-style:none;
font-size:14px;
}
ul.topnav li {
width:180px;
height:30px;
margin:1px 0 0;
background-color:#666;
position: absolute;
left:0; top:0;
}
ul.topnav li.navTopPos{ top:32px; }
ul.topnav li.navLeftPos1{ left:180px; }
ul.topnav li.navLeftPos2{ left:360px; }
ul.topnav li.navLeftPos3{ left:540px; }
</style>
</head>
<body>
<div id="nav">
<ul class="topnav">
<li>ONE</li>
<li class="navTopPos">TWO</li>
<li class="navLeftPos1">THREE</li>
<li class="navLeftPos1 navTopPos">FOUR</li>
<li class="navLeftPos2">FIVE</li>
<li class="navLeftPos2 navTopPos">SIX</li>
<li class="navLeftPos3">SEVEN</li>
<li class="navLeftPos3 navTopPos">EIGHT</li>
</ul>
</div>
</body>