对于具有多个属性的CSS transition shorthand,我似乎找不到正确的语法.这没什么用:

.element {
  -webkit-transition: height .5s, opacity .5s .5s;
     -moz-transition: height .5s, opacity .5s .5s;
      -ms-transition: height .5s, opacity .5s .5s;
          transition: height .5s, opacity .5s .5s;
  height: 0;
  opacity: 0;
  overflow: 0;
}
.element.show {
  height: 200px;
  opacity: 1;
}

我用javascript添加了show类.元素变得更高、更明显,只是不会过渡.在最新的Chrome、FF和Safari上进行测试.

我做错了什么?

编辑:为了清楚起见,我正在寻找缩写版本来缩小我的CSS.它已经足够臃肿了,有所有的供应商前缀.还扩展了示例代码.

推荐答案

语法:

transition: <property> || <duration> || <timing-function> || <delay> [, ...];

请注意,如果指定了延迟,则持续时间必须在延迟之前.

速记声明中组合的各个过渡:

-webkit-transition: height 0.3s ease-out, opacity 0.3s ease 0.5s;
-moz-transition: height 0.3s ease-out, opacity 0.3s ease 0.5s;
-o-transition: height 0.3s ease-out, opacity 0.3s ease 0.5s;
transition: height 0.3s ease-out, opacity 0.3s ease 0.5s;

或者只是将它们全部转换:

-webkit-transition: all 0.3s ease-out;
-moz-transition: all 0.3s ease-out;
-o-transition: all 0.3s ease-out;
transition: all 0.3s ease-out;

这是a straightforward example美元.这是另一个with the delay property.


这里之前列出的Edit:是关于transition的兼容性和已知问题.删除以提高可读性.

底线是:只要使用它就行了.此属性的性质对所有应用程序都是不间断的,全球兼容性现在远高于94%.

如果您仍然想确定,请参阅http://caniuse.com/css-transitions

Css相关问答推荐

如何使重复线性渐变适合字体大小?

CSS子网格不显示行间距

在R shiny中 Select DT表格值的背景 colored颜色 (无条件的自由 Select )

禁用MUI DataGrid上的悬停效果

如何使我的标语(h1元素)不居中对齐?

Img 未拉伸以满足所需的纵横比

当前的 html 标签没有发生两列布局

在 Tailwind css 中,间距对我不起作用

在活动状态下更改按钮的外观

关键帧不能动画回来

CSS3 - RotateY() 居中

如何断言 CSS 属性包含Cypress 测试中的一些文本?

在 vuetify 中跨 `default.vue` 和 `index.vue` 维护网格系统

为什么不能将特定于供应商的伪元素/类组合成一个规则集?

使用 CSS 剪辑/裁剪背景图像

数据协议 URL 大小限制

HTML表格:保持列的宽度相同

如何使 window.scrollTo() 效果平滑

堆叠半透明盒子的 colored颜色 取决于订单?

如何在没有实际 Retina 显示屏的情况下在 Windows 上测试 Retina 网站?