2
我想構建一個像主要導航的機器人,它適合Susy網格。它看起來像這樣:與Susy網格的水平列表
的代碼放在這裏:
HTML:
<div class="container">
<nav>
<ul class="horizontal-list">
<li>
<a href="#">One</a>
</li>
<li>
<a href="#">Two</a>
</li>
<li>
<a href="#">Three</a>
</li>
<li>
<a href="#">Four</a>
</li>
</ul>
</nav>
</div>
SASS:
header.main {
height: $headerHeight;
background: url('images/headerBackground.gif');
.container {
@include container;
@include susy-grid-background;
nav {
@include span-columns(8);
ul.horizontal-list {
@include horizontal-list;
overflow: visible;
li {
@include isolate-grid(2, 8);
padding: 0;
display: table;
a {
// vertical alignment
display: table-cell;
height: $headerHeight/2;
padding-bottom: 2px;
vertical-align: bottom;
// appearance
color: $greyLight;
font-size: 18px;
text: {
transform: uppercase;
decoration: none;
}
// hover
position: relative;
&:before {
content: '';
display: block;
width: $headerUnderlineGap;
background: $black;
height: $headerHeight;
position: absolute;
top: 0;
margin-left: -$headerUnderlineGap + 1;
}
&:hover {
color: $white;
&:after {
content: '';
display: block;
background: $cyanLight;
width: 114%; // TODO check why space(2, 8) does not work
height: 4px;
position: absolute;
margin: -1px 0 0 1px;
}
}
}
}
}
}
}
}
我覺得這是一個有點哈克設置&:after
元素的寬度爲114%
,而不是space(2, 8)
。任何人都可以告訴我,如何用Susy網格和連續下劃線設置水平導航,並一路懸停到下一個li元素。
在此先感謝!
嘿Eric!非常感謝你,它非常棒!我正在考慮這一天的一半。你能告訴我這是怎麼回事,2是真實的情況。是因爲每個「li」元素都有2列嗎?再次感謝你!再見,Niels ps:很遺憾,我不能投票給你,因爲我至少需要15個聲望......:/ – nielsG
是的,上下文始終與你在同一位置從塊級元素獲得的跨度相同。如果您想要查找元素的上下文,只需設置「display:block;」並查看它的功能。在這種情況下,您的':before'元素位於跨越'2'的'li'內,因此上下文爲'2'。 –