தமிழ்

பயனர் விருப்பங்களுக்கு ஏற்ப தானாக மாறும் லைட் மற்றும் டார்க் தீம்களை உருவாக்க CSS மீடியா வினவல்கள் மற்றும் தனிப்பயன் பண்புகளின் ஆற்றலை ஆராயுங்கள், உலகளாவிய பார்வையாளர்களுக்கான அணுகல் மற்றும் காட்சி முறையீட்டை மேம்படுத்துங்கள்.

CSS லைட்-டார்க் செயல்பாடு: உலகளாவிய வலைக்கான தானியங்கி தீம் தழுவல்

இன்றைய உலகளாவிய இணைக்கப்பட்ட உலகில், வலைத்தளங்கள் பல்வேறு பின்னணிகள் மற்றும் விருப்பங்களைக் கொண்ட பயனர்களுக்கு அணுகக்கூடியதாகவும் பார்வைக்கு ஈர்க்கக்கூடியதாகவும் இருக்க வேண்டும். இதை அடைவதற்கான மிகவும் பயனுள்ள வழிகளில் ஒன்று தானியங்கி தீம் தழுவல் ஆகும், குறிப்பாக பயனரின் கணினி அமைப்புகளின் அடிப்படையில் சரிசெய்யும் லைட் மற்றும் டார்க் தீம்களை வழங்குவது. இந்த வலைப்பதிவு இடுகை CSS மீடியா வினவல்கள் மற்றும் தனிப்பயன் பண்புகளைப் பயன்படுத்தி இந்த செயல்பாட்டை செயல்படுத்துவதில் உங்களுக்கு வழிகாட்டும், இது உங்கள் சர்வதேச பார்வையாளர்களுக்கு ஒரு தடையற்ற மற்றும் வசதியான உலாவல் அனுபவத்தை உறுதி செய்யும்.

ஏன் தானியங்கி லைட் மற்றும் டார்க் தீம்களைச் செயல்படுத்த வேண்டும்?

உங்கள் வலைத் திட்டங்களில் தானியங்கி தீம் தழுவலை இணைக்க பல கட்டாயக் காரணங்கள் உள்ளன:

CSS மூலம் தானியங்கி தீம் தழுவலை எவ்வாறு செயல்படுத்துவது

தானியங்கி தீம் தழுவலின் மையமானது prefers-color-scheme மீடியா வினவலில் உள்ளது. இந்த CSS மீடியா வினவல் பயனரின் விருப்பமான வண்ணத் திட்டத்தை (லைட் அல்லது டார்க்) கண்டறிந்து அதற்கேற்ப ஸ்டைல்களைப் பயன்படுத்த உங்களை அனுமதிக்கிறது.

படி 1: தனிப்பயன் பண்புகளை (CSS மாறிகள்) வரையறுக்கவும்

உங்கள் லைட் மற்றும் டார்க் தீம்களுக்கான வண்ண மதிப்புகளைச் சேமிக்க தனிப்பயன் பண்புகளை (CSS மாறிகள்) வரையறுப்பதன் மூலம் தொடங்கவும். இது மாறி மதிப்புகளைப் புதுப்பிப்பதன் மூலம் தீம்களுக்கு இடையில் மாறுவதை எளிதாக்குகிறது.


:root {
  --background-color: #ffffff; /* லைட் தீம் பின்னணி */
  --text-color: #000000; /* லைட் தீம் உரை */
  --link-color: #007bff; /* லைட் தீம் இணைப்பு */
  --button-background-color: #f0f0f0;
  --button-text-color: #000;
}

@media (prefers-color-scheme: dark) {
  :root {
    --background-color: #121212; /* டார்க் தீம் பின்னணி */
    --text-color: #ffffff; /* டார்க் தீம் உரை */
    --link-color: #66b3ff; /* டார்க் தீம் இணைப்பு */
    --button-background-color: #333;
    --button-text-color: #fff;
  }
}

இந்த எடுத்துக்காட்டில், பின்னணி நிறம், உரை நிறம், இணைப்பு நிறம் மற்றும் பொத்தான் நிறங்களுக்கான மாறிகளை நாங்கள் வரையறுக்கிறோம். :root தேர்வி இந்த மாறிகளை முழு ஆவணத்திற்கும் பயன்படுத்துகிறது. பயனர் தங்கள் கணினியை டார்க் மோடுக்கு அமைக்கும்போது @media (prefers-color-scheme: dark) மீடியா வினவல் இந்த மாறிகளை டார்க் தீம் மதிப்புகளுடன் மேலெழுதுகிறது.

படி 2: உங்கள் ஸ்டைல்களில் தனிப்பயன் பண்புகளைப் பயன்படுத்துங்கள்

அடுத்து, உங்கள் வலைத்தள கூறுகளின் தோற்றத்தைக் கட்டுப்படுத்த இந்த தனிப்பயன் பண்புகளை உங்கள் CSS ஸ்டைல்களில் பயன்படுத்துங்கள்.


body {
  background-color: var(--background-color);
  color: var(--text-color);
  transition: background-color 0.3s, color 0.3s; /* மென்மையான மாற்றம் */
}

a {
  color: var(--link-color);
}

button {
  background-color: var(--button-background-color);
  color: var(--button-text-color);
  border: none;
  padding: 10px 20px;
  cursor: pointer;
}

இங்கே, எங்கள் தனிப்பயன் பண்புகளின் மதிப்புகளை அணுக var() செயல்பாட்டைப் பயன்படுத்துகிறோம். தீம்களுக்கு இடையில் ஒரு மென்மையான மாற்றத்தை உருவாக்க body உறுப்புக்கு ஒரு transition பண்பையும் சேர்த்துள்ளோம்.

படி 3: சோதனை மற்றும் மெருகூட்டல்

உங்கள் செயலாக்கத்தை வெவ்வேறு உலாவிகள் மற்றும் இயக்க முறைமைகளில் முழுமையாகச் சோதிக்கவும். Chrome, Firefox, Safari மற்றும் Edge போன்ற நவீன உலாவிகள் prefers-color-scheme மீடியா வினவலை முழுமையாக ஆதரிக்கின்றன. உங்கள் இயக்க முறைமை அமைப்புகளில் லைட் மற்றும் டார்க் மோடுகளுக்கு இடையில் மாறி உங்கள் வலைத்தளத்தில் பிரதிபலிக்கும் மாற்றங்களைக் காணலாம்.

மேம்பட்ட நுட்பங்கள் மற்றும் பரிசீலனைகள்

கைமுறை தீம் மாற்றியை வழங்குதல்

தானியங்கி தீம் தழுவல் ஒரு சிறந்த தொடக்கப் புள்ளியாக இருந்தாலும், சில பயனர்கள் தங்கள் கணினி அமைப்புகளை கைமுறையாக மேலெழுத விரும்பலாம். நீங்கள் ஜாவாஸ்கிரிப்ட் மற்றும் லோக்கல் ஸ்டோரேஜைப் பயன்படுத்தி ஒரு கைமுறை தீம் மாற்றியை வழங்கலாம்.

HTML:


<button id="theme-toggle">Toggle Theme</button>

JavaScript:


const themeToggle = document.getElementById('theme-toggle');
const body = document.body;

let currentTheme = localStorage.getItem('theme') || 'auto'; // இயல்பாக ஆட்டோ

function setTheme(theme) {
  if (theme === 'dark') {
    body.classList.add('dark-theme');
    body.classList.remove('light-theme');
  } else if (theme === 'light') {
    body.classList.add('light-theme');
    body.classList.remove('dark-theme');
  } else {
    body.classList.remove('light-theme', 'dark-theme');
  }
  localStorage.setItem('theme', theme);
  currentTheme = theme;
}

// பக்கம் ஏற்றப்படும்போது ஆரம்ப தீமைப் பயன்படுத்துங்கள்
if (currentTheme === 'dark') {
  setTheme('dark');
} else if (currentTheme === 'light') {
  setTheme('light');
} else {
  //ஆட்டோவில் அமைக்கப்பட்டால், prefers-color-scheme தீர்மானிக்க அனுமதிக்கவும்
}


themeToggle.addEventListener('click', () => {
    if (currentTheme === 'auto'){
        setTheme('light');
    } else if (currentTheme === 'light') {
        setTheme('dark');
    } else {
        setTheme('auto');
    }
});

CSS: முந்தைய CSS உடன் பின்வரும் CSS-ஐச் சேர்க்கவும். கைமுறை மேலெழுதுதலை கவனிக்கவும்:


body.light-theme {
  --background-color: #ffffff; /* லைட் தீம் பின்னணி */
  --text-color: #000000; /* லைட் தீம் உரை */
  --link-color: #007bff; /* லைட் தீம் இணைப்பு */
  --button-background-color: #f0f0f0;
  --button-text-color: #000;
}

body.dark-theme {
  --background-color: #121212; /* டார்க் தீம் பின்னணி */
  --text-color: #ffffff; /* டார்க் தீம் உரை */
  --link-color: #66b3ff; /* டார்க் தீம் இணைப்பு */
  --button-background-color: #333;
  --button-text-color: #fff;
}

இந்த குறியீடு துணுக்கானது பயனர்கள் லைட், டார்க் மற்றும் தானியங்கி தீம்களுக்கு இடையில் மாற அனுமதிக்கும் ஒரு பொத்தானைச் சேர்க்கிறது. தேர்ந்தெடுக்கப்பட்ட தீம் லோக்கல் ஸ்டோரேஜில் சேமிக்கப்படுகிறது, இதனால் அது பக்க ஏற்றங்கள் முழுவதும் நீடிக்கும்.

படங்கள் மற்றும் SVG-களைக் கையாளுதல்

சில படங்கள் மற்றும் SVG-கள் லைட் மற்றும் டார்க் தீம்களில் நன்றாகத் தெரியாமல் இருக்கலாம். இந்த சொத்துக்களின் வெவ்வேறு பதிப்புகளை நிபந்தனையுடன் காட்ட நீங்கள் CSS மீடியா வினவல்களைப் பயன்படுத்தலாம்.


img.light-mode {
  display: block;
}

img.dark-mode {
  display: none;
}

@media (prefers-color-scheme: dark) {
  img.light-mode {
    display: none;
  }

  img.dark-mode {
    display: block;
  }
}

இந்த குறியீடு துணுக்கானது ஒரு படத்தை (light-mode வகுப்பைக் கொண்ட) லைட் மோடிலும், வேறு ஒரு படத்தை (dark-mode வகுப்பைக் கொண்ட) டார்க் மோடிலும் காட்டுகிறது.

சர்வதேச பார்வையாளர்களுக்கான வண்ணத் தட்டு பரிசீலனைகள்

உங்கள் லைட் மற்றும் டார்க் தீம்களுக்கான வண்ணத் தட்டுகளைத் தேர்ந்தெடுக்கும்போது, கலாச்சாரத் தொடர்புகள் மற்றும் அணுகல்தன்மை பரிசீலனைகளைக் கவனத்தில் கொள்ளுங்கள். இதோ சில பொதுவான வழிகாட்டுதல்கள்:

செயல்திறன் பரிசீலனைகள்

தானியங்கி தீம் தழுவலைச் செயல்படுத்துவது ஒப்பீட்டளவில் நேரடியானது என்றாலும், செயல்திறனில் ஏற்படக்கூடிய தாக்கத்தைக் கருத்தில் கொள்வது அவசியம். ரெண்டரிங்கை மெதுவாக்கக்கூடிய மிகவும் சிக்கலான CSS தேர்வாளர்கள் அல்லது அனிமேஷன்களைப் பயன்படுத்துவதைத் தவிர்க்கவும். மேலும், மாறி தேடல்களின் மேல்சுமையைக் குறைக்க உங்கள் தனிப்பயன் பண்புகள் திறமையாக வரையறுக்கப்பட்டுள்ளன என்பதை உறுதிப்படுத்தவும்.

செயல்திறனை மேம்படுத்துவதற்கான சில சிறந்த நடைமுறைகள் இங்கே:

அணுகல்தன்மைக்கான சிறந்த நடைமுறைகள்

உங்கள் லைட் மற்றும் டார்க் தீம்கள் WCAG (Web Content Accessibility Guidelines) போன்ற அணுகல்தன்மை வழிகாட்டுதல்களைப் பூர்த்தி செய்வதை உறுதிசெய்யவும். இது போதுமான வண்ண மாறுபாட்டை வழங்குதல், சொற்பொருள் HTML-ஐப் பயன்படுத்துதல் மற்றும் அனைத்து ஊடாடும் கூறுகளும் விசைப்பலகை மூலம் அணுகக்கூடியவை என்பதை உறுதி செய்வதை உள்ளடக்கியது.

பின்பற்ற வேண்டிய சில குறிப்பிட்ட அணுகல்தன்மை சிறந்த நடைமுறைகள் இங்கே:

பல்வேறு பிராந்தியங்களில் உள்ள எடுத்துக்காட்டுகள்

பல்வேறு உலகளாவிய பார்வையாளர்களுக்காக லைட் மற்றும் டார்க் தீம்கள் எவ்வாறு வடிவமைக்கப்படலாம் என்பதற்கான இந்த எடுத்துக்காட்டுகளைக் கவனியுங்கள்:

முடிவுரை

தானியங்கி லைட் மற்றும் டார்க் தீம்களைச் செயல்படுத்துவது உலகளாவிய பார்வையாளர்களுக்கு மிகவும் அணுகக்கூடிய மற்றும் பயனர் நட்பு வலை அனுபவத்தை உருவாக்குவதற்கான ஒரு முக்கியமான படியாகும். CSS மீடியா வினவல்கள் மற்றும் தனிப்பயன் பண்புகளைப் பயன்படுத்துவதன் மூலம், உங்கள் வலைத்தளத்தின் தோற்றத்தை பயனர் விருப்பங்களுடன் எளிதாகப் பொருத்தலாம், கண் அழுத்தத்தைக் குறைக்கலாம் மற்றும் பார்வை குறைபாடுள்ள பயனர்களுக்கான அணுகலை மேம்படுத்தலாம். அனைவருக்கும் ஒரு தடையற்ற மற்றும் உள்ளடக்கிய உலாவல் அனுபவத்தை உறுதிசெய்ய கலாச்சாரத் தொடர்புகள், அணுகல்தன்மை வழிகாட்டுதல்கள் மற்றும் செயல்திறன் பரிசீலனைகளைக் கருத்தில் கொள்ள நினைவில் கொள்ளுங்கள்.

இந்த நுட்பங்களைப் பின்பற்றுவதன் மூலம், நீங்கள் நவீன வலை வடிவமைப்பு கொள்கைகளுக்கான அர்ப்பணிப்பைக் காட்டுகிறீர்கள் மற்றும் உங்கள் சர்வதேச பார்வையாளர்களின் பல்வேறு தேவைகளைப் பூர்த்தி செய்கிறீர்கள், உங்கள் வலைத்தளத்தை அனைவருக்கும் வரவேற்கத்தக்க மற்றும் வசதியான இடமாக மாற்றுகிறீர்கள்.