単純なULリストを持っています。下のHTMLのMore
リストアイテムにカーソルを置くと、その子メニューが表示され、表示されます。CSSリストアイテムをホバリングすると、親アイテムを変更するCSS
私がする必要があるのは、実際にMore
のCSSのCSSを変更し、子メニューが表示されホバリングされた後です。
More
の上にカーソルを置くと、子メニューが表示されるようになり、その子メニューの上にマウスカーソルを合わせます。この時点で、More
を持つメニューであるこの子メニューのParentのCSSをテキストとして変更する必要があります。
Javascriptなしでこれを行う方法を知っているなら、私は知りたいのですが... JSなしでも可能性はないのでしょうか?
<div id="nav-wrapper">
<ul>
<li><a href="">Link</a></li>
<li><a href="">Link 5</a></li>
<li><a href="">More</a>
<ul>
<li><a href="">Sub Link 1</a></li>
<li><a href="">Sub Link 2</a></li>
<li><a href="">Sub Link 3</a></li>
<li><a href="">Sub Link 4</a></li>
<li><a href="">Sub Link 5</a></li>
</ul>
</li>
</ul>
</div>
あなたはCSSで親要素を選択することはできません
<style type="text/css" media="screen">
#nav-wrapper ul {
position:relative;
width: 700px;
float: right;
margin: 0;
list-style-type: none;
}
#nav-wrapper ul li {
vertical-align: middle;
display: inline;
margin: 0;
color: black;
list-style-type: none;
}
#nav-wrapper ul li a {
text-decoration: none;
white-space: nowrap;
line-height: 45px;
font-size: 13px;
color: #666;
padding: 5px 15px;
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
}
#nav-wrapper ul li a:hover {
color: #fff;
background-color: #4caef2;
}
#nav-wrapper ul li a:visited {
color: #666;
}
/* Hide Sub-menus */
#nav-wrapper ul ul{
display: none;
}
/* SHOW Sub-menus on HOVER */
#nav-wrapper ul li:hover ul{
display: block;
margin:-10px 0 0 0;
padding:0px 20px 20px 20px;
border-color:#fff;
border:1px;
border-style:solid;
background:#FFF;
position:absolute;
top:45px;
right: 320px;
width: 420px;
}
</style>
うわー、それはかなり素晴らしいです! – CodeDevelopr