当圆形按钮和下拉菜单之间用空格隔开时,保留下拉菜单悬停

阿久克

主要问题是由圆形按钮引起的。但是我真的想要一个圆形按钮,这会导致悬停问题!我想要的是有一个圆形<a>按钮,当将鼠标悬停在按钮上时,它将显示下面的另一个元素,例如div或另一个标签。这两个元素之间存在间隙。

然后,我应该能够将鼠标向下移动,并将鼠标悬停在显示的元素上,然后单击它或进行其他操作。但是,当然,如果您将鼠标悬停在原始位置上,<a>则另一个元素将消失,特别是因为两个元素之间存在间隙。这样做的最佳方法是什么,以便我可以将鼠标从元素1移动到元素2而在鼠标移动过程中元素2不消失?

理想情况下,这不需要JS。

到目前为止,我已经为此创建了一个基本设置:

body {
  padding: 30px;
  height: 100vh;
}

#myBtn {
  background-color: grey;
  padding: 20px;
  border-radius: 50%;
}

#hoverInfo {
  display: none;
  margin-top: 40px;
  background-color: green;
  width: 100px;
  height: 50px;
}

#myBtn:hover + #hoverInfo, #hoverInfo:hover {
  display: block;
}
<a id="myBtn" href="/">
  button
</a>

<a id="hoverInfo" href="/">hover info</a>

这是我的旧解决方案尝试的解释:

我第一个阻止元素2在鼠标向下移动时消失的解决方案是在元素1和2之间放置一个不可见的可悬停元素,当鼠标向下移动时,元素2保持活动状态。如果所有元素都是矩形,这将很好用。但是我的元素1是循环的!

这意味着在中间悬停缓冲区元素和elem 1之间实际上只有一个接触像素,因为在elem 1和不可见的中间元素之间存在那些圆形的“角”间隙。因此,每当您将鼠标向下移动时,您仍将有99%的时间错过中间悬停元素。

而且您也不能将其放在elem 1后面以填充那些圆形“角”,因为圆形元素有一个边界框,您只能在inspect元素中看到它,并且此bbox阻止您用一个区域填充那些“角”实际上与鼠标交互的功能,因此使该解决方案无用。我的解释很混乱,但是如果您设法实现此“解决方案”,请尝试一下。

陪同Afif

您可以使用伪元素轻松解决此问题,该元素将使可悬停区域更大并且仅在悬停时激活:

body {
  padding: 30px;
  height: 100vh;
}

#myBtn {
  background-color: grey;
  padding: 20px;
  border-radius: 50%;
  position:relative;
}
#myBtn:before {
   content:"";
   display:none;
   position:absolute;
   top:90%;
   left:0;
   right:0;
   height:28px;
}

#hoverInfo {
  display: none;
  margin-top: 40px;
  background-color: green;
  width: 100px;
  height: 50px;
}

#myBtn:hover::before {
  display:block;
  background:rgba(0,0,255,0.2); /* to illustrate */
}
#myBtn:hover + #hoverInfo, #hoverInfo:hover {
  display: block;
}
<a id="myBtn" href="/">
  button
</a>

<a id="hoverInfo" href="/">hover info</a>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

单击后保留下拉菜单

来自分类Dev

如何在菜单和下拉菜单之间添加空格

来自分类Dev

菜单和下拉菜单之间的空间

来自分类Dev

简单的下拉菜单–悬停时过渡

来自分类Dev

下拉菜单在悬停时消失

来自分类Dev

悬停时的语义 ui 下拉菜单

来自分类Dev

悬停时 Boostrap 下拉菜单关闭

来自分类Dev

提交表单后,保留下拉菜单的$ _GET值

来自分类Dev

水平下拉菜单悬停

来自分类Dev

下拉显示下拉菜单上的悬停按钮

来自分类Dev

在下拉菜单上悬停时,jQuery悬停下拉菜单消失

来自分类Dev

菜单和子菜单之间的CSS下拉菜单对齐

来自分类Dev

在浏览下拉菜单时,将悬停效果保留在主菜单上吗?

来自分类Dev

如何在悬停在菜单上时将其保留在下拉菜单中?

来自分类Dev

在浏览下拉菜单时,将悬停效果保留在主菜单上吗?

来自分类Dev

Bootstrap:下拉菜单与按钮下拉菜单

来自分类Dev

悬停活动后CSS下拉菜单无法保留

来自分类Dev

引导程序下拉问题。(下拉菜单和下拉菜单仍为下拉菜单)

来自分类Dev

位置下拉按钮和下拉菜单位于中心?

来自分类Dev

Bootstrap的下拉菜单中的下拉按钮

来自分类Dev

悬停按钮下拉菜单上的引导程序

来自分类Dev

悬停按钮下拉菜单上的引导程序

来自分类Dev

在鼠标悬停时显示下拉菜单

来自分类Dev

使用CSS在鼠标悬停时创建下拉菜单

来自分类Dev

悬停时的Bootstrap下拉菜单幻灯片动画

来自分类Dev

在错误元素悬停时触发纯CSS下拉菜单

来自分类Dev

悬停时的Drupal 8 Bootstrap主题下拉菜单

来自分类Dev

悬停时,jQuery下拉菜单不会隐藏

来自分类Dev

CSS下拉菜单在悬停时不起作用

Related 相关文章

热门标签

归档