LoginSignup
0
0

More than 3 years have passed since last update.

hoverで子メニューが表示されるサイドバーメニュー

Last updated at Posted at 2020-11-28

※ Resultを0.25xにしてご覧ください。

See the Pen hoverで子メニューがでてくるサイドバー by 熊瀬川直也 (@momonoki1990) on CodePen.

  • liの中に、親要素(a.parent)と子要素(ul.child)を並列させる。
  • 子要素(ul.child)はdisplay:noneで消しておく
  • 親要素と子要素をまとめるliに対して:hoverをかけ、子要素(ul.child)をdisplay: blockで表示させる。
  • 親要素(a.parent)に対して:hoverをかけても、子要素(ul.child)は親要素(a.parent)に内包されていないので、子要素(ul.child)にカーソルを合わせている時に、子要素(ul.child)が消えてしまう。
  • 親要素(a.parent)はdisplay: blockで広げておく
  • 子要素(ul.child)は、z-index: 9999;→浮かせる、white-space: nowrap;→折り返させない、box-shadow: 0 2px 8px rgba(77, 77, 77, 0.2);→浮いているように見せる
  • liの高さはaタグに対して上下paddingをかけて押し広げる(リンクの選択範囲がliの高さいっぱいまで広がる)
  • 親要素と子要素をまとめるliposition: relativeをかけて、子要素(ul.child)やspan.chevronposition: absolute;をかけることで、子要素(ul.child)やspan.chevronの位置を定める。
  • ullist-style: noneをかけておく。
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0