Transition には主に 4 つの属性値が含まれます:
変換を実行する属性: transition-property
、transition-property
,
变换延续的时间:transition-duration
,
在延续时间段,变换的速率变化transition-timing-function
,
变换延迟时间transition-delay
。
下面分别来看这四个属性值
一、transition-property
语法:
transition-property : none | all | [ <IDENT> ] [ ',' <IDENT> ]*
ログイン後にコピー
transition-property
是用来指定当元素其中一个属性改变时执行transition效果,其主要有以下几个值:none(没有属性改变);all(所有属性改变)这个也是其默认值;indent(元素属性名)。当其值为none时,transition马上停止执行,当指定为all时,则元素产生任何属性值变化时都将执行transition效果,ident是可以指定元素的某一个属性值。其对应的类型如下:
1、color: 通过红、绿、蓝和透明度组件变换(每个数值处理)如:background-color,border-color,color,outline-color等css属性;
2、length: 真实的数字 如:word-spacing,width,vertical-align,top,right,bottom,left,padding,outline-width,margin,min-width,min-height,max-width,max-height,line-height,height,border-width,border-spacing,background-position等属性;
3、percentage:真实的数字 如:word-spacing,width,vertical-align,top,right,bottom,left,min-width,min-height,max-width,max-height,line-height,height,background-position等属性;
4、integer离散步骤(整个数字),在真实的数字空间,以及使用floor()转换为整数时发生 如:outline-offset,z-index等属性;
5、number真实的(浮点型)数值,如:zoom,opacity,font-weight,等属性;
6、transform list:详情请参阅:《CSS3 Transform》
7、rectangle:通过x, y, width 和 height(转为数值)变换,如:crop
8、visibility: 离散步骤,在0到1数字范围之内,0表示“隐藏”,1表示完全“显示”,如:visibility
9、shadow: 作用于color, x, y 和 blur(模糊)属性,如:text-shadow
10、gradient: 通过每次停止时的位置和颜色进行变化。它们必须有相同的类型(放射状的或是线性的)和相同的停止数值以便执行动画,如:background-image
11、paint server (SVG): 只支持下面的情况:从gradient到gradient以及color到color,然后工作与上面类似
12、space-separated list of above:如果列表有相同的项目数值,则列表每一项按照上面的规则进行变化,否则无变化
13、a shorthand property: 如果缩写的所有部分都可以实现动画,则会像所有单个属性变化一样变化
具体什么css属性可以实现transition效果,在W3C官网中列出了所有可以实现transition效果的CSS属性值以及值的类型,大家可以点这里了解详情。这里需要提醒一点是,并不是什么属性改变都为触发transition动作效果,比如页面的自适应宽度,当浏览器改变宽度时,并不会触发transition的效果。但上述表格所示的属性类型改变都会触发一个transition动作效果。
二、transition-duration
语法:
transition-duration : <time> [, <time>]*
ログイン後にコピー
transition-duration
是用来指定元素 转换过程的持续时间,取值:
三、transition-timing-function
语法:
transition-timing-function : ease | linear | ease-in | ease-out | ease-in-out | cubic-bezier(<number>, <number>, <number>, <number>)
[, ease | linear | ease-in | ease-out | ease-in-out | cubic-bezier(<number>, <number>, <number>, <number>)]*
ログイン後にコピー
取值:
transition-timing-function
変換の期間: transition-duration
、
期間内、変換 変化率
transition-timing-function
、
遷移遅延時間 transition-delay
。 - これら 4 つの属性値を個別に見てみましょう1. Transition-property
- 構文:
transition-delay : <time> [, <time>]*
ログイン後にコピー
-
transition-property
は、トランジション エフェクトが実行されるときに実行されることを指定するために使用されます。要素のプロパティが変更され、主に次の値が含まれます: none (属性は変更されません); all (すべての属性が変更されました)。これはデフォルト値でもあります (要素の属性名)。値が none の場合、all に指定すると、要素の属性値が変更されたときに遷移効果が実行されます。要素の特定の属性値を指定できます。対応するタイプは次のとおりです:
- 1. カラー: 背景色、境界線色、色、輪郭色などの赤、緑、青、透明度のコンポーネントによって変換されます (各数値は処理されます)。 CSS 属性;
- 2. 長さ: 単語間隔、幅、垂直方向の配置、上、右、下、左、パディング、アウトラインの幅、マージン、最小幅、最小高さなどの実数。 max-width、max-height、line-height、height、border-width、border-spacing、background-position などの属性: 単語間隔、幅、垂直方向などの実数。 align、top、right、bottom、left、min-width、min-height、max-width、max-height、line-height、height、background-position およびその他の属性
- 4、整数の離散ステップ (整数)数値)、実数値空間、および Floor() を使用して整数に変換するときに発生する属性 (浮動小数点)、例: ズーム、不透明度、フォントの太さ、その他の属性
6. 変形リスト: 詳細については、「CSS3 変形」を参照してください。
7. x、y、幅を介して変形します。および高さ (数値に変換)、例: トリミング
🎜 🎜8. 可視性: 0 から 1 の範囲内の個別のステップ、0 は「非表示」を意味し、1 は完全に「表示」を意味します。例: 可視性🎜 🎜🎜🎜9. Shadow: 色、x、y およびぼかし (Blurred) 属性に作用します。たとえば、text-shadow🎜🎜🎜🎜10. 停止するたびに位置と色が変化します。アニメーションを実行するには、同じタイプ (放射状または線形) と同じストップ値を持つ必要があります (背景画像🎜🎜🎜🎜など)。ペイント サーバー (SVG): グラデーションからグラデーションまでの状況のみをサポートします。色から色への作業は上記と同様です🎜🎜🎜🎜12. 上記のスペース区切りのリスト: リストの項目値が同じである場合、リスト内の各項目は上記のルールに従って変更されます。変更はありません🎜🎜🎜🎜 13. 短縮プロパティ: 略語のすべての部分をアニメーション化できる場合、すべての単一プロパティの変更と同じように変更されます🎜🎜🎜🎜具体的には、どの CSS プロパティがトランジション効果を達成できるか、すべてのトランジション実現できる効果は、W3C 公式 Web サイトの CSS プロパティ値と値の型にリストされています。詳細については、ここをクリックしてください。ここで注意する必要があるのは、すべての属性変更がトランジション アクション効果をトリガーするわけではないということです。たとえば、ブラウザーがページの幅を変更しても、トランジション エフェクトはトリガーされません。ただし、上の表に示されている属性タイプを変更すると、トランジション アクション効果がトリガーされます。 🎜🎜2. Transition-duration🎜🎜 構文: 🎜🎜
a {-moz-transition: background 0.5s ease-in,color 0.3s ease-out;
-webkit-transition: background 0.5s ease-in,color 0.3s ease-out;
-o-transition: background 0.5s ease-in,color 0.3s ease-out;
transition: background 0.5s ease-in,color 0.3s ease-out;
}
ログイン後にコピー
ログイン後にコピー
🎜🎜
transition-duration
は、要素変換プロセスの期間を指定するために使用されます。値: