מצב כהה עבור 1C-Bitrix: משתני CSS, ללא הבזק, תמיכה מלאה ברכיבים

מבקר מגיע לאתר שלך בלילה, והממשק מסנוור אותו עם רקע לבן. אם מתג המצב הכהה מיושם בצורה גרועה, המשתמש רואה הבזק לבן (FOUC) לפני שהנושא משתנה. הוא עוזב תוך פחות מ-3 שניות. אנו מגדירים מצב כהה עבור 1C-Bitrix עם מעברים חלקים, שמירה
השירותים שאנו מציעים
מציג 1 מתוך 1כל 1626 השירותים
מצב כהה עבור 1C-Bitrix: משתני CSS, ללא הבזק, תמיכה מלאה ברכיבים
פשוט
~1 יום

הכישורים שלנו:

שאלות נפוצות

העבודות האחרונות

  • image_website-b2b-advance_0.webp
    פיתוח אתר חברה B2B ADVANCE
    1455
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    פיתוח אתר לחברת FIXPER
    1018
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    פיתוח מבוסס Bitrix, Bitrix24, 1C לחברה פיתוח ווידג'ט להזמנת תורים אונליין למרכז רפואי
    760
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    פיתוח על בסיס 1C Enterprise עבור MIRSANBEL
    879
  • image_crm_dolbimby_434_0.webp
    פיתוח אתר על CRM Bitrix24 עבור DOLBIMBY
    804
  • image_crm_technotorgcomplex_453_0.webp
    פיתוח על בסיס Bitrix24 עבור חברת TECHNOTORGKOMPLEKS
    1162

מבקר מגיע לאתר שלך בלילה, והממשק מסנוור אותו עם רקע לבן. אם מתג המצב הכהה מיושם בצורה גרועה, המשתמש רואה הבזק לבן (FOUC) לפני שהנושא משתנה. הוא עוזב תוך פחות מ-3 שניות. אנו מגדירים מצב כהה עבור 1C-Bitrix עם מעברים חלקים, העדפות שמורות, וללא רכיבים שבורים. אנו מציעים פתרון מפתח ביד עם אחריות ל-12 חודשים. קבל ייעוץ חינם — נעריך את הפרויקט שלך תוך שעתיים.

כיצד אנו מיישמים מצב כהה מפתח ביד

התהליך אורך 2–3 ימים. ראשית, אנו מבצעים ביקורת על התבנית הנוכחית: צבעים, גופנים, תמונות. לאחר מכן אנו ממירים את כל הצבעים למאפיינים מותאמים אישית של CSS. כבר יש לנו מערכת מוכחת של 20+ משתנים לאלמנטים בסיסיים (רקע, טקסט, הדגשות, גבולות). זה מהיר יותר מאשר לבנות מאפס. בפרויקט אחד עם קטלוג של 50,000 פריטים, חסכנו כ-30% מזמן הפיתוח על ידי שימוש חוזר במשתנים והימנעות מעקיפות סלקטורים.

התכונה המרכזית: סקריפט זיהוי הנושא נטען בתוך הקוד לפני הסגנונות. ללא זה, מתרחש FOUC. אנו מכניסים אותו לתוך header.php מיד אחרי <head>:

<head> <meta charset="UTF-8"> <script> (function() { const t = localStorage.getItem('theme') || (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light'); document.documentElement.setAttribute('data-theme', t); })(); </script> <?php $APPLICATION->ShowHead(); ?> </head> 

הסקריפט מגדיר מיד את התכונה <head> <meta charset="UTF-8"> <script> (function() { const t = localStorage.getItem('theme') || (window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light'); document.documentElement.setAttribute('data-theme', t); })(); </script> <?php $APPLICATION->ShowHead(); ?> </head> על האלמנט השורשי, וכל הסגנונות מוחלים ללא דיחוי. זה מונע את ההבזק הלבן האופייני גם במכשירים איטיים.

למה מאפיינים מותאמים אישית של CSS במקום מחלקות?

גישה חלופית היא הוספת מחלקת data-theme על ה-body ועקיפת סגנונות באמצעות ספציפיות. אבל זה מוביל לשכפול קוד ומסבך את התחזוקה. מאפיינים מותאמים אישית של CSS עובדים מהר יותר (הדפדפן לא מחשב מחדש סלקטורים) ומאפשרים שינוי נושא על ידי עקיפת הערכים במקום אחד בלבד. בבדיקות שלנו, מהירות העיבוד השתפרה ב-10–15%. העלות הראשונית של יישום עם משתנים דומה, אך התחזוקה לטווח ארוך זולה משמעותית.

גישה מהירות תמיכת דפדפנים מורכבות הגירה
מאפיינים מותאמים אישית של CSS גבוהה מודרניים (96%+) נמוכה (רק לשנות ערכים)
מבוסס מחלקות בינונית כולל IE11 גבוהה (לעקוף כל סלקטור)
קובץ CSS נפרד נמוכה כל הדפדפנים גבוהה (שכפול קוד)

אנו ממליצים על מאפיינים מותאמים אישית של CSS. עבור IE11, אנו מספקים ירידה הדרגתית ללא מצב כהה. מידע נוסף על מאפיינים מותאמים אישית של CSS ב-MDN.

כיצד להימנע מ-FOUC בעת טעינת העמוד

FOUC הוא הבעיה המרכזית במצב כהה. אם סגנונות המצב הכהה נטענים באופן אסינכרוני או לאחר העיבוד, המשתמש רואה הבזק לבן. הפתרון שלנו: הסקריפט הפנימי ב-.dark (ראה לעיל) מגדיר <head> לפני שסגנונות CSS נטענים. כל הסגנונות משתמשים ב-data-theme המוגדרים עבור כל תכונה.

התאמת תמונות ורכיבים

בלוקים סטנדרטיים של Bitrix (var(--color-xxx), .bx-sls, טופס הרשאה) כוללים סגנונות משלהם. אנו עוקפים אותם באמצעות סלקטורים עם .popup-window-content:

:root[data-theme="dark"] .bx-sls { background: var(--color-card-bg); color: var(--color-text); } :root[data-theme="dark"] .popup-window-content { background: var(--color-bg); border-color: var(--color-border); } 

עבור תמונות, אנו משתמשים ב-data-theme או בפילטרים של CSS. עדיף להכין גרסה כהה של הלוגו ולהכניס אותה דרך :root[data-theme="dark"] .bx-sls { background: var(--color-card-bg); color: var(--color-text); } :root[data-theme="dark"] .popup-window-content { background: var(--color-bg); border-color: var(--color-border); } . לוגואים עם שקיפות דורשים גרסה נפרדת. עבור אייקונים, ניתן להחיל פילטר CSS <picture> על רקע בהיר, אך על רקע כהה התוצאה עלולה להיות לא קריאה. אנו ממליצים להכין שתי קבוצות של אייקונים: בהירים וכהים. מעברי צבע ברקע צריכים להיות מוחלפים באמצעות מאפיינים מותאמים אישית של CSS.

טעויות נפוצות במהלך היישום

טעות ראשונה: שכחת רכיבים שמתערבבים באופן אסינכרוני (למשל, עגלת קניות בחלון קופץ). שנייה: לא לטפל בתמונות עם סגנונות פנימיים. שלישית: לא לשמור את בחירת הנושא בפרופיל המשתמש המורשה של Bitrix, מה שגורם לאיפוס ההגדרה לאחר התנתקות. אנו מכסים את כל המקרים הללו במהלך הבדיקות.

מה כלול בעבודה

  • ביקורת על סגנונות ורכיבים נוכחיים
  • המרת צבעים למאפיינים מותאמים אישית של CSS (קובץ ראשי + רכיבים)
  • סקריפט זיהוי נושא פנימי (ללא FOUC)
  • כפתור החלפת נושא (דסקטופ + מובייל)
  • שמירת בחירה ב-localStorage ובפרופיל המורשה (Bitrix)
  • התאמת תמונות (לוגואים, אייקונים, רקעים)
  • עקיפת רכיבים סטנדרטיים: חיפוש חכם, חלונות קופצים, הרשאה
  • בדיקות ב-Chrome, Firefox, Safari, Edge
  • תיעוד משתנים ו-API
  • הדרכת מנהלי תוכן

שלבים ולוחות זמנים

שלב זמן
ביקורת ועיצוב 1–2 שעות
המרה למשתנים 6–12 שעות
לוגיקת סקריפט ומתג 2–3 שעות
התאמת תמונות 2–4 שעות
עקיפת רכיבים 3–6 שעות
בדיקות ותיקונים 2–3 שעות

סה"כ 2 עד 3 ימים תלוי במורכבות התבנית. צור קשר להערכה מקדימה — זה לוקח פחות משעה. ניסיון עם Bitrix: 8+ שנים, מעל 50 פרויקטים שהושלמו. אנו מספקים אחריות ל-12 חודשים על כל העבודה. הזמן יישום מצב כהה היום.