jquery - 在传统动画之后使 span 元素具有固定宽度

标签 jquery html css

我有一个非常典型的情况,我已经思考了一个多星期了。 我有一个表,每个 td 内部都有一个 span 元素,如下面的 HTML 所示。单击按钮 span 元素四处移动并重新排列它们自己。我选择将 span 放在 td 中,因为它更容易使用 span 来制作动画移动 tds。

一切正常,除了我想对这些跨度产生悬停效果,这是我无法实现的。我已经尝试了 stackoverflow 或 google 必须提供的所有 css 解决方案,但似乎都不起作用。

最初所有 span 元素都在 tds 中居中,但在动画移动后不再居中。

感谢任何 css 或 html 或 jquery 方式的帮助!!1

HTML:

<tr>
    <td><span id = "14">45</span></td>
    <td><span id = "15">1</span></td>
    <td><span id = "16">16</span></td>
    <td><span id = "17">10</span></td>
    <td><span id = "18">8</span></td>
    <td><span id = "19">19</span></td>
    <td><span id = "20">25</span></td>
</tr>

<tr>
    <td><span id = "21">45</span></td>
    <td><span id = "22">9</span></td>
    <td><span id = "23">3</span></td>
    <td><span id = "24">23</span></td>
    <td><span id = "25">30</span></td>
    <td><span id = "26">5</span></td>
    <td><span id = "27">7</span></td>
</tr> 

CSS:

span {
    color: #3a3b36;
    font-size: 15px;
    /*display: inline;
      width: 82px;
      height: inherit;
      line-height: 100%;*/
}

td {
    vertical-align: middle;
    border: 1px solid black;
    text-align: center;
}

Javascript(传统动画):

for(i = 0; i < pos.length; i++){                  
     $('#' + i).css({
         position: 'absolute',
         top: pos[i].top,
         left: pos[i].left,   
     });              
 } //for loop ends

最佳答案

关于您的问题对跨度有悬停效果,如果您需要简单的效果,您可以使用 css 属性 :hover。 下面的代码将以红色显示悬停的跨度

td span:hover {
  background-color:red;
}

如果你想平滑悬停效果,请使用过渡属性。

td {
    vertical-align: middle;
    border: 1px solid black;
    text-align: center;
    transition: all 1s;
}
td:hover {
  background-color:red;
  transition: all 1s;
}

顺便说一句,你可以用 jquery 来管理它:

$( "span" ).hover(
  function() {
  $(this).css("background-color","red");
},function() {
  $(this ).css("background-color","white");
}
);

第一个函数是鼠标悬停处理程序,第二个函数是鼠标离开处理程序。

关于你的其他问题,我需要更多地了解你的目标,你的 onClick 事件是什么?

关于jquery - 在传统动画之后使 span 元素具有固定宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34295979/

相关文章:

jquery - maplace.js 不显示谷歌地图

javascript - 如何找到 Canvas 中有多少个单位?

html - 图片内的文章

html - 绝对定位的元素的父元素绝对必须容纳子元素的高度

jquery - 从 Slickgrid 中的 Dataview 获取过滤后的数据

javascript - Jquery 获取最近一次点击的属性 ID

html - 如何使 2 张图像(相同高度不同宽度)按比例缩小

javascript - 通过 Id 获取 HTML 元素并通过 React 切换其 CSS

html - Flexbox 不适用于 IE10

javascript - js,延迟函数