我正在尝试(在某种程度上)复制该主题顶部菜单栏的外观:http: //elegantthemes.com/preview/Lucid/
我正在努力的部分是让我借用<li>
的渐变来占据元素占据的整个“块” 。由于这在概念上有点难以解释,这是我目前拥有的:http: //jsfiddle.net/tCH39/
作为参考,以下是相关的 HTML 和 CSS:
<div id="top-menu">
<ul>
<li><a href="home">Home</a></li>
<li><a href="about">About</a></li>
</ul>
</div>
CSS:
body { /* CSS Reset - http://meyerweb.com/eric/tools/css/reset/ */
margin: 0;
padding: 0;
border: 0;
outline: 0;
font-size: 100%;
vertical-align: baseline;
background: transparent;
}
ol, ul { list-style: none; }
li {
display: inline;
padding-left: 30px;
padding-right: 30px;
}
a {
text-decoration: none;
color: black;
}
#top-menu {
position: relative;
/*display: block;*/
background-color: #f9f9f9;
width: 100%;
height: auto;
border-bottom: 1px solid #eeeeee;
margin-bottom: 60px;
padding-top: 5px;
padding-bottom: 5px;
}
#top-menu a {
text-shadow: 1px 1px 0 #fff;
color: #4b4b4b;
width: auto;
height: 100%;
display: inline-block;
}
#top-menu > ul > li > a { -moz-transition: all .5s; -webkit-transition: all .5s; -o-transition: all .5s; transition: all .5s; }
#top-menu > ul > li > a:hover { color: #fff; background-color: #4b4b4b; text-shadow: -1px -1px 0 #000; -moz-box-shadow: inset 0 0 10px rgba(0,0,0,0.9); -webkit-box-shadow: inset 0 0 10px rgba(0,0,0,0.9); box-shadow: inset 0 0 10px rgba(0,0,0,0.9); }
#top-menu li.sfHover > a { color: #fff; text-shadow: none; }
为什么渐变仅限于文本,而不是由填充、边距等组成的整个区域?
提前致谢。