このテーマの一番上にあるメニューバーの外観を (一種の) 複製しようとしています: 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; }
パディングやマージンなどで構成される領域全体ではなく、グラデーションがテキストのみに制限されているのはなぜですか?
前もって感謝します。