הוספת סליידר html+css ללא js

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

ברור שלא צריך להימנע מזה בכל מקרה כשהדרישה העיצובית/שיווקית דורשת את זה אבל לפעמים ניתן להסתפק בסליידר פשוט שהוא אמנם צנוע מאוד במראהו ולא מתיימר להחליף סליידרים מתקדמים אבל נותן את אפקט הסליידר בצורה מינימליסטית. במקרה שמתאים, סליידר כזה לא ישפיע לרעה על ביצועים מכיוון שהוא כולו html+css וללא קוד js בכלל.

<p class="item-1">כאן תוסיפו טקסט שיופיע בסלייד הראשון</p>

<p class="item-2">כאן תוסיפו טקסט שיופיע בסלייד השני</p>

<p class="item-3">כאן תוסיפו טקסט שיופיע בסלייד השלישי</p>

בדוגמה מדובר בשלושה פסקאות html אבל תוכלו להתאים לצרכים שלכם. כעת הוסיפו את ה CSS הבא:

body { 
  color: #FFFFFF; 
}

.item-1, 
.item-2, 
.item-3 {
  position: absolute;
  display: block;
  top: -12rem;
  right: 20%;
  z-index: 1;
  width: 65%;
  background-color: rgba(0, 0, 0, 0.1);
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.2),
    0 6px 6px 0 rgba(0, 0, 0, 0.19);
  padding: 25px 40px 25px 40px;
  
  font-size: 2.5rem;
  animation-duration: 30s;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
}

.item-1{
	animation-name: anim-1;
}

.item-2{
	animation-name: anim-2;
}

.item-3{
	animation-name: anim-3;
}

@keyframes anim-1 {
  0%, 8.3% { left: -100%; opacity: 0; }
  8.3%,25% { left: 25%; opacity: 1; }
  33.33%, 100% { left: 110%; opacity: 0; }
}

@keyframes anim-2 {
  0%, 33.33% { left: -100%; opacity: 0; }
  41.63%, 58.29% { left: 25%; opacity: 1; }
  66.66%, 100% { left: 110%; opacity: 0; }
}

@keyframes anim-3 {
  0%, 66.66% { left: -100%; opacity: 0; }
  74.96%, 91.62% { left: 25%; opacity: 1; }
  100% { left: 110%; opacity: 0; }
}

כרגיל, כל הפרמטרים ניתנים לשינוי לצרכים שלכם.

0 0 דירוגים
דרג את הפוסט
הרשמה
Notify of
0 תגובות
Inline Feedbacks
הצג את כל התגובות

גם הסניפטים הבאים יעניינו אותך

0
אשמח לשמוע את דעתכם, מוזמנים להשאיר תגובהx