html - css3 过渡,无法让它工作

标签 html css transitions

我正在尝试开发一种功能,在该功能中,在表格的边缘只能看到按钮/链接最右边的 10 或 15 像素,以指示为该行设置的状态。如果用户将鼠标悬停在部分隐藏元素的边缘,该元素将滑入 View ,以便用户可以看到状态文本。我一直在尝试这个并创建了一个 fiddle ,但无法让动画以所需的持续时间触发并放松它现在只是改变位置并且不会那么顺利。有什么指点吗?

这是 fiddle 链接,下面是一些 html 和 css

http://jsfiddle.net/UT5kf/

<table>
    <tbody>
        <tr>
            <td data-value="5 Loremifierad">
                <span class="status-strip prospect">
                    5 Loremifierad
                </span>
            </td>
            <td data-value="Pixar Inc">
                Pixar Inc
            </td>
            <td data-value="170 000">
                170 000
            </td>
            <td data-value="7%">
                7%
            </td>
            <td data-value="20%">
                <div class="progress">
                    <div aria-valuemax="100" aria-valuemin="0" aria-valuenow="20" class="progress-bar" role="progressbar" style="width: 20%;">
                        <span>20%</span>
                    </div>
                </div>
            </td>
            <td data-value="2014-04-22">
                2014-04-22
            </td>
            <td data-value="Jonathan Swift">
                Jonathan Swift
            </td>
        </tr>

        <tr>
            <td data-value="5 Loremifierad">
                <span class="status-strip credited">
                    5 Loremifierad
                </span>
            </td>
            <td data-value="Pixar Inc">
                Pixar Inc
            </td>
            <td data-value="170 000">
                170 000
            </td>
            <td data-value="7%">
                7%
            </td>
            <td data-value="20%">
                <div class="progress">
                    <div aria-valuemax="100" aria-valuemin="0" aria-valuenow="20" class="progress-bar" role="progressbar" style="width: 20%;">
                        <span>20%</span>
                    </div>
                </div>
            </td>
            <td data-value="2014-04-22">
                2014-04-22
            </td>
            <td data-value="Jonathan Swift">
                Jonathan Swift
            </td>
        </tr>
    </tbody>
</table>

<style>  .status-strip{
    transition: left 2s ease-in-out, opacity 2.2s ease-in-out;
    display:inline-block;width:100px;
    margin-left:-75px;
  }


  .status-strip {
    background: #8ec63f;
    transition-property: background;
    transition-duration: 0.5s;
    transition-timing-function: linear;
  }
  .status-strip:hover {
    background: yellow;
    margin-left:0px;}

最佳答案

将您的过渡更改为:

Demo Fiddle

transition: margin-left 0.4s ease-in-out, opacity 0.6s ease-in-out;

您当前引用的是 left 而不是 margin-left,这是您随后要更改的属性。

注意。您还在 opacity 上添加了一个过渡,但没有设置任何值,不确定这是否应该存在。

关于html - css3 过渡,无法让它工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23517021/

相关文章:

html - 如何为 div 标签中的元素设置样式?

css - 如何使用 CSS 将长文本指示到较小的固定列中?

webkit - Safari-webkit-transition-property : animating scale and/or background-size

通过 CSS 初始化的 JavaFX slider 刻度线消失

javascript - 使用 d3 过渡增加和减少圆的半径

algorithm - 平滑过渡算法

html - 如何将我的 css 文件与 sublime text 2 中的 html 链接起来?

javascript - 修改影子根中自定义元素的样式

html - 媒体查询不适用于 chrome 但适用于 SO 编辑器

html - Bootstrap 图标已停止出现在我的应用程序中