"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيف يمكنني إنشاء وضع مظلم قابل للتخصيص لموقع الويب الخاص بي باستخدام متغيرات CSS وJavaScript؟

كيف يمكنني إنشاء وضع مظلم قابل للتخصيص لموقع الويب الخاص بي باستخدام متغيرات CSS وJavaScript؟

تم النشر بتاريخ 2024-11-07
تصفح:310

How can I create a customizable dark mode for my website using CSS Variables and JavaScript?

تخصيص الوضع المظلم باستخدام متغيرات CSS وجافا سكريبت

يعد تنفيذ الوضع المظلم لتطبيقك أو موقع الويب الخاص بك أمرًا بالغ الأهمية في توفير تجربة مستخدم سلسة. توفر قواعد وسائط CSS الأصلية خيارًا للمتصفحات لاكتشاف الأوضاع المظلمة التي يحددها النظام، ولكن قد يفضل المستخدمون سمة مختلفة لمواقع أو متصفحات معينة لا تدعمها بعد، مثل Microsoft Edge.

للمعالجة هذا، يمكننا الاستفادة من متغيرات CSS وجافا سكريبت لإدارة إعدادات السمات.

تخصيص CSS مع المتغيرات والسمات

تحديد متغيرات CSS على المستوى الجذر أو الافتراضي، وتحديد مظهر داكن:

:root {
    --font-color: #000;
    ...
    --bg-color: rgb(243,243,243);
}

[data-theme="dark"] {
    --font-color: #c1bfbd;
    ...
    --bg-color: #333;
}
استدعاء المتغيرات عند الحاجة لضبط الأنماط ديناميكيًا.

جافا سكريبت لاكتشاف السمات وتبديلها

في قسم الرأس في HTML الخاص بك، أضف جافا سكريبت لاكتشاف السمة المفضلة للمستخدم:

function detectColorScheme() {
    var theme = "light";
    ...
}
detectColorScheme();
استخدم JavaScript للتبديل بين السمات الفاتحة والداكنة:

const toggleSwitch = document.querySelector('#theme-switch input[type="checkbox"]');

function switchTheme(e) {
    ...
}

toggleSwitch.addEventListener('change', switchTheme, false);

HTML لتبديل السمات

إنشاء مربع اختيار HTML لتبديل السمات التي يتحكم فيها المستخدم:

باستخدام هذا الأسلوب، يمكنك اكتشاف سمة المستخدم تلقائيًا، والسماح له بتجاوزها، وتوفير تجربة مخصصة عبر المتصفحات والأنظمة الأساسية.

أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3