【问题标题】:How to animate all except one feature with CSS如何使用 CSS 为除一项功能之外的所有功能设置动画
【发布时间】:2013-07-25 22:51:42
【问题描述】:

我有一个简单的问题。

我想为文本区域提供“全部”动画,但我不希望它为焦点上的文本阴影设置动画。

当我使用以下内容时如何进行例外处理:

input[type=text]:focus {
    background: #fff;
    text-shadow: none;
    transition:all 0.5s;
    -webkit-transition:all 0.5s;
    -moz-transition:all 0.5s;
}

【问题讨论】:

标签: css css-transitions transition


【解决方案1】:

这实际上很简单,只需为所有这些设置规则,然后为文本阴影再次设置它:

input[type=text]:focus {
    background: #fff;
    text-shadow: none;
    transition:all 0.5s;
    -webkit-transition:all 0.5s;
    -moz-transition:all 0.5s;
    transition:text-shadow 0s;
    -webkit-transition:text-shadow 0s;
    -moz-transition:text-shadow 0s;
}

使用此代码,如果您更改文本阴影,它将立即更改,而不是动画。就像@Patrick 评论的那样,如果您根本不想更改文本阴影,请确保您不编辑该属性。

【讨论】:

  • 没问题!那么请选择这个作为正确答案。 :D
  • 仅供参考,这并不能“修复”它。它只是用text-shadow 0s 覆盖all 0.5s,你不再有all 转换..
  • 是的,它只是覆盖。正确答案在这里——stackoverflow.com/a/24371094/2570353
【解决方案2】:

如果不想覆盖过渡属性,也可以这样写:

input[type=text]:focus {
background: #fff;
transition:all 0.5s, text-shadow 0s;
-webkit-transition:all 0.5s, text-shadow 0s;
-moz-transition:all 0.5s, text-shadow 0s;
}

【讨论】:

    猜你喜欢
    • 2016-04-21
    • 2013-01-10
    • 2017-07-20
    • 2022-10-24
    • 2019-06-08
    • 2022-01-07
    • 2021-09-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多