2

我最近使用 Google 教程创建了一个纯 CSS 下拉菜单。

我有一个问题:

如果我给 2nd level 一个小的边距,当你将鼠标悬停在和 parent下拉菜单ul之间的差距上时,它就会消失。ulli

有没有办法解决这个不涉及 Javascript 的问题?

请参阅此处的演示:http: //jsfiddle.net/ba76n/2/

4

4 回答 4

2

使用padding-top而不是margin-top.

看到它工作。http://jsfiddle.net/ba76n/5/

于 2012-09-17T12:51:53.210 回答
2

该边距导致鼠标放弃“鼠标悬停”状态,没有它可以正常工作。

如果您切换到padding-top:.5em;它应该可以按预期工作。这是因为边距位于块元素的外部,而填充位于内部。

于 2012-09-17T12:52:53.863 回答
2

使用padding-top而不是margin-top因为边距应用在块之外,所以当您尝试选择子菜单时,它会出现在边距上并且块被更改,因此子菜单消失

于 2012-09-17T12:56:01.323 回答
0

http://jsfiddle.net/ba76n/9/更新了你的小提琴......希望它有帮助:)

(刚刚从下拉 li 中删除了边距顶部并添加了边框)

于 2012-09-17T12:54:15.783 回答