当有人将鼠标悬停在<a>元素上时,我想显示一个div,但我想用CSS而不是JavaScript来做这件事.你知道怎样才能做到这一点吗?

推荐答案

你可以做类似this:

div {
    display: none;
}
    
a:hover + div {
    display: block;
}
<a>Hover over me!</a>
<div>Stuff shown on hover</div>

它使用adjacent sibling selector,是suckerfish dropdown menu的基础.

HTML5允许锚元素包装几乎任何东西,因此在这种情况下,div元素可以成为锚的子元素.否则原理是一样的——使用:hover伪类更改另一个元素的display属性.

Css相关问答推荐

如何将表格单元格的最后一个子级与单元格底部对齐?

如何为垫子制作圆角- Select 所有角点上的下拉列表

如何将下拉面板放置在MAT-SELECT文本框的正下方

如何在Angular material 选项卡中设置自定义圆角下划线的样式

如何在CSS中实现边框的局部透明?

如何使用混合混合模式更改动画背景上的文本 colored颜色

使用 Vuetify 的 sass 变量时出错

如何将 div 和 img 包装在 display:flex 容器中

Prettier/VS Code 在 CSS 中的 !important 之前添加一个空格,导致它在 WordPress 中崩溃

如何在不使用 sx props 的情况下从 Select 样式中定位 mui paper 组件?

Z Index 复杂性 - 如何将组件放置在 div 内部以相对于其级别外部的组件具有更高的 z-index 值?

应用边框半径的 iframe 在 4 个角上有细曲线

为什么 em 不将定义的字体大小加倍?

如何将数据从样式化组件发送到函数?

纯 CSS/JS 的 SVG 连续向内方形螺旋动画

CSS,居中的 div,缩小以适应?

使用 float:left 后如何获得新行?

悬停效果:展开底部边框

修复 Mobile Safari (iPhone) 上文本呈现不一致且某些字体比其他字体大的字体大小问题?

如何仅在一侧设置 CSS 边框?