transition-timing-function Property
ویژگی transition-timing-function
در CSS نحوه اوج و فرود در سرعت اجرای افکت های transition
را مشخص می کند.
این توابع زمانی به شما این امکان را می دهد تا بتوانید انیمیشن مورد نظر خود را اجرا کنید، اما نکته قابل توجه اینست که مدت زمان transition یا transition-duration
نقش مهمی در چگونگی به جلوه در آمدن توابع زمانی دارد.
نحوه نوشتار
transition-timing-function: ease; transition-timing-function: ease-in; transition-timing-function: ease-out; transition-timing-function: ease-in-out; transition-timing-function: linear; transition-timing-function: step(4); transition-timing-function: cubic-bezier(.61,1.07,.54,-0.09);
مقادیر
ease
این مقدار پیشفرض است.transition
را به آرامی شروع کرده، سپس سریع میشود و در پایان به آرامی پایان میابد.
ease-in
transition
را به آرامی شروع می کند، سپس رفته رفته سرعتش بیشتر می شود.
ease-out
transition
را به سرعت شروع می کند و سپس رفته رفته آرام می شود.
ease-in-out
transition
را به آرامی شروع می کند، سرعتش بیشتر می شود و سپس آرام میشود.
linear
transition
را با سرعتی ثابت شروع می کند، ادامه داده و پایان می دهد.
(عدد) step
transition
را بصورت مرحله به مرحله اجرا می کند. عدد داخل () نیز تعداد مراحل را مشخص می کند.
cubic-bezier (n1,n2,n3,n4)
تمام روند transition
را میتوان بصورت دستی با استفاده از این تابع زمانی مشخص کرد. مقادیر n1 تا n3 باید مابین 0 تا 1 باشند.
در مثال زیر نحوه عملکرد این ویژگی ها را میبینیم:
html
<section> <p>ماوس را روی این کادر بیاورید. (duration = 3s)</p> <div class="box ease">ease</div> <div class="box ease-in">ease-in</div> <div class="box ease-out">ease-out</div> <div class="box ease-in-out">ease-in-out</div> <div class="box linear">linear</div> <div class="box cubic-bezier">cubic-bezier</div> </section>
css
section { padding: 7px 15px 15px; margin: 15px; border: 2px solid #555555; border-radius: 10px; text-align: center; } section:hover .box { width: 100%; background-color: red; } p { direction: rtl; margin: 0 0 13px; font: bold 17px calibri; } .box { color: white; background-color: dodgerblue; border-radius: 50px; padding: 7px 0; width: 130px; font: normal 16px monospace; margin: 7px 0 0 0; transition: all 3s; } .ease { transition-timing-function: ease; } .ease-in { transition-timing-function: ease-in; } .ease-out { transition-timing-function: ease-out; } .ease-in-out { transition-timing-function: ease-in-out; } .linear { transition-timing-function: linear; } .cubic-bezier { transition-timing-function: cubic-bezier(0.16, 0.61, 0.61, -0.07); }
مشاهده و ویرایش کد در حالت تمام صفحه
پشتیبانی مرورگرها
تمام مرورگرها از این ویژگی در CSS پشتیبانی میکنند.