如何在不使用 useState 的情况下在 <tr> 悬停时显示/隐藏 <td> 的背景图像

莱奥马尔·阿米尔

我想要发生的是在第一个中显示/隐藏背景图像,<td>同时将鼠标悬停在整个表格行上而不添加任何状态。我想我可以只使用一些 css 选择器并使用:hover<tr/>来处理它。虽然不知道从这里去哪里。

我期望的行为:

  • <td>当用户未将鼠标悬停在 a 上时,在 a 中显示背景图像<tr>
  • 在整个悬停时隐藏背景图像 <tr>

这是我希望它看起来像的 gif

到目前为止我所尝试的是在 td 中添加一个 div 并添加一个背景图像。但是,我不确定如何触发<tr/>td 的悬停,然后更改 td 的样式以添加visibility: hidden;<td/>

这是我迄今为止尝试过的简单代码和框链接

从沙箱粘贴代码

export default function App() {
  return (
    <div className="App">
      <table>
        <thead>
          <tr>
            <th>Header</th>
            <th>Header 2</th>
            <th>Header 3</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <StyledTD>
              <TableDataBackground />
              checkbox placholder
            </StyledTD>
            <td> Some person </td>
            <td> this is their data</td>
          </tr>
        </tbody>
      </table>
    </div>
  );
}

const StyledTD = styled.td`
  position: relative;
`;

const TableDataBackground = styled.div`
  position: absolute;
  top: 0;
  height: 30px;
  width: 30px;
  background-image: url("http://assets.stickpng.com/images/58afdad6829958a978a4a693.png");
  background-size: 30px;
  background-repeat: no-repeat;
`;
米西

解决方案

https://codesandbox.io/s/so-67255819-hyubp?file=/src/App.js

说明

我分叉了你的 codeandbox 并对样式组件进行了一些添加。

  1. 假设您渲染表格时背景图像元素已经就位,我将默认显示设置为display: none;.
  2. 鼠标悬停时,我使用 styled-components引用其他组件的方法TableDataBackground从组件内选择组件注意:我必须移动之前的声明,以便我可以选择它。TabletrTableDataBackground Table

编辑:在代码和框中,display自从我重新阅读您的问题以来,我反转了值,它说在悬停时显示图像

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在不使用填充/边距的情况下在移动视图中的 tr 中在 td 上方添加空格

如何在不使用处理程序类的情况下在gridview模板字段内显示图像?

如何在不使用外部库的情况下在 Jetpack Compose 中显示 base64 编码的图像

如何在不使用背景图像的情况下获得背景毛玻璃效果

如何在不使用for循环的情况下在jQuery中同时删除多个tr

如何在tr的背景色上显示TD的边框

如何在不使用背景图像的情况下创建视差效果?

如何在不使用固定的情况下使其响应身体背景图像?

如何在不破坏CSS标头的情况下在Webfolio WordPress主题中使用背景图像?

在不使用foreignObject的情况下在SVG中显示CSS图像精灵

如何在不使用CSS页面的情况下在HTML中创建悬停效果

如何在不使用磁盘存储的情况下在python中加载图像?

如何在不使用图像的情况下在 div 上实现参差不齐的边缘效果?

如何在不使用UIImage的情况下在Swift中处理图像?

如何在不使用内置函数的情况下在matlab中翻转图像?

如何在不使用segue的情况下在视图控制器之间传递图像

如何在不使用 Pillow 的情况下在 Python 中调整图像大小

如何在不使用databse的情况下在Crystal报表中添加动态图像?

如何在不使用 <br> 的情况下在 html 中使用浮动/内联时换行?

如何在不使用下拉列表的情况下在SSRS报表中显示多值参数

如何在不使用cpconfig util的情况下在Linux系统上显示已安装的CSP?

如何在不使用 itemsource 的情况下在 UWP 中显示静态表格/网格?

如何在不使用鼠标的情况下在Skype聊天中选择(突出显示)文本?

如何在没有behidcode的情况下在asp.net中隐藏图像

如何在不使用JLabel的情况下将背景图像添加到没有面板的JFrame中?

如何在不保存的情况下在python窗口中显示图像/屏幕截图

如何在不水平扩展的情况下在页面边缘显示图像的一半?

使用 useState 和 onClick 与 React 更改背景图像

如何在不使用隐藏字段的情况下在表单提交时将变量传递给CFC?