html - 按类将转换属性添加到现有转换属性
问题描述
在 CSS3 中是否可以让一个类只向现有的过渡添加新的过渡属性而不是替换旧的过渡定义?
例如:
.transition-a {
transition: opacity 0.3s ease-in;
}
.transition-b {
transition: color 0.3s ease-in !important;
}
<div class="transition-a transition-b">
</div>
将覆盖 transition-a 而不是向现有的转换定义添加附加属性。
如果可以组合不同的类(如 mixins)产生类似的属性,那就太好了
transition: color 0.3s ease-in, opacity 0.3 ease-in`
无需明确指定两个类的组合规则,这会迫使您重复自己。
编辑:更多细节
.badge
我目前使用 Bootstrap 的 SASS 源,并希望在 Bootstrap类上应用额外的转换。.fade
我有一个包含以下内容的附加类:
.custom-badge.fade {
transition: opacity 0.3s ease-in !important;
如果它不会覆盖 Bootstraps.badge
类转换属性的定义,它将正常工作。我只是想为现有的颜色过渡添加一个额外的过渡属性。
解决方案
这是不可能的。
但是,在这种情况下,我的解决方法是分解简短的语法并只重写需要更改的属性,这样您就可以保留其余的。
在这种情况下:
.transition-a {
transition-property: opacity;
transition-duration: .3s;
transition-timing-function: ease-in;
}
.transition-b {
transition-property: opacity, color;
}
注意:如果 .transition-b 在 .transition-a 之后声明,则可以省略 !important NB2:这对背景图像非常有效。
推荐阅读
- php - 使用 Bootstrap 4 水平居中动态 div.card
- node.js - 我的应用程序中的表单值没有保存在 MongoDb 中
- javascript - 反应地图功能不渲染
- java - 当 modCount 在 java.util.ArrayList 中初始化时?
- laravel - laravel 更新方法忽略隐藏选择中的字段
- c# - 我在使用 c# 读取文件属性“文件类型”时遇到问题
- java - 实现 Parcelable 接口时如何读/写 java.math.BigInteger?
- excel - 如果 activecell 内部颜色发生变化,则
- excel - 如何根据 VBA 中另一个范围内的值将自动生成的选项按钮设置为“真”?
- c# - 绑定到子用户控件的属性