וורדפרס ואתרי אינטרנט

owl-158414_960_720
דורג 5 מתוך 5

באתר תמצאו מדריכים ומאמרים ייחודים בעברית, המדריכים לרוב מנסיון מעשי ומיוחסים לפרוייקטים שאני עובד עליהם באותו הזמן. האתר הוא יותר לשימוש פרטי ולתיעוד דברים, בכדי להשתמש מאוחר יותר, אבל החלטתי לפרסם ניתן לשאול כל שאלה וגם לתרום מדריכים באתר דרך תגובה או דרך צור קשר

אנימציות ב CSS3

ניתן לקרא גם את המדריך הקודם אנימציות ב CSS3 חלק א

אחת הבשורות ש css3 הביא לנו זה אנימציות, אם עד היום נצרכנו ל JS כדי לעשות אנימציות. CSS3 מציע אנימציות בקלות.

יש לציין שהאנימציות נתמכות בדפדפנים: Chrome, Safari, FireFox, Opera וחלקית ב-IE9.

See the Pen CSS3 animated weather icons by Lennart Hase (@motorlatitude) on CodePen.

דבר ראשון נכיר את @keyframes

את קוד האנימציה רושמים תחת @keyframes כך: (מזכיר קצת את media-query)

<style>

@keyframes animation_name {

    from {background-color: blue;}
    to {background-color: red;}

}


div {
    width: 100px;
    height: 100px;
    background-color: blue;
    animation-name: animation_name;
    animation-duration: 5s;
} 

</style>


<div></div>

אחרי keyframes רושמים שם שאנחנו בוחרים לאנימציה והיא תפעל על האלמנט שבו נשים בסטייל את התגית animation-name והשם שבחרנו.

בדוגמא למעלה אנחנו מפעילים על ה div אנימציה שאורכת 5 שניות שבמהלכה אנחנו משנים את הרקע מכחול לאדום אפשר לשנות כל דבר מיקום, גובה, רוחב וכו..

וזה נראה ככה..

See the Pen QKPzdG by josef arazi (@shiran) on CodePen.

 

animation-iteration-count

הפרמטר הזה מקבל מספר ובו מספר הפעמים שתבוצע האנימציה, הוא נרשם בתוך הסטייל של האלמנט שעליו רוצים לעשות את האנימציה.

ניתן גם לקבוע שהאנימציה תמשך עד אינסוף :

animation-iteration-count: infinite;

ניתן לגרום לאנימציה לפעול רק בעת מעבר

div:hover {
    width: 100px;
    height: 100px;
    background-color: red;
    animation-name: animatuin_name;
    animation-duration: 4s;
    animation-iteration-count: infinite;
}

אפשר לקבוע מה קורה בכל שלב באנימציה באחוזים

@-webkit-keyframes example {
    0%   {background-color:red; left:0px; top:0px;}
    25%  {background-color:yellow; left:200px; top:0px;}
    50%  {background-color:blue; left:200px; top:200px;}
    75%  {background-color:green; left:0px; top:200px;}
    100% {background-color:red; left:0px; top:0px;}
}

להשים לב: בכל שלב שינינו כמה מאפיינים.

animation-timing-function

ניתן להגדיר גם מהירות לאנימציה בכל מיני ווריאציות, נרשם בתוך הסטייל של האלמנט שעליו רוצים לעשות את האנימציה.

ease – האנימציה מתחילה לאט אחר כך מהר ובסוף שוב פעם לאט ( ברירת המחדל אם לא נבחר)
linear – האנימציה באותו הקצב גם בהתחלה וגם בסוף.
ease-in – מתחיל ואחר כך ממשיך מהר עד הסוף.
ease-out – מתחיל מהר ואחר כך מאט עד הסוף.
ease-in-out – מאט רק בהתחלה ובסוף.
cubic-bezier(n,n,n,n) – מאפשר להכניס ערכים שמגדירים את מהירות האנימציה.

animation-delay

מגדיר השהייה לאנימציה כלומר שתתחיל רק בעוד זמן מסויים, גם נרשם בסטייל של האלמנט.

דוגמא:

animation-delay: 2s;

 

 

תפריט נגישות