1.4.1 - Szín használata

Röviden a szabványpontról

A WCAG 1.4.1 (Use of Color) előírja, hogy a szín ne legyen az egyetlen vizuális eszköz az információ közvetítésére, művelet jelzésére, válasz kérésére vagy vizuális elem megkülönböztetésére. Ez minden olyan tartalomra vonatkozik, ahol színt használnak jelentés közvetítésére. A cél az, hogy biztosítsa, hogy azok a felhasználók, akik nem tudják érzékelni a színkülönbségeket – mint például a színvakok vagy gyengénlátók – még mindig megérthessék és használhassák a tartalmat kritikus információ elvesztése nélkül.

Kiket érint

Ez a szabványpont elsősorban a színlátási problémákkal élő embereket érinti (pl. vörös-zöld színvakság), gyengénlátókat vagy azokat, akik monokróm kijelzőket használnak. De hasznos lehet akkor is, ha:

  • Rossz megvilágítási körülmények között használják
  • Képernyő tükröződés van jelen
  • Olyan eszközöket használnak, amelyek nem jelenítenek meg jól színeket

Tesztelés

  1. Színstílusok eltávolítása: Kapcsold ki a CSS színstílusokat a böngészőben vagy használd a fejlesztői eszközöket annak ellenőrzésére, hogy a színnel közvetített információ érthető marad-e
  2. Szürkeárnyalatos mód használata: Alakítsd át az oldalt szürkeárnyalatossá és ellenőrizd, hogy minden információ még mindig megkülönböztethető-e
  3. Ellenőrzés színvakság szimulátorokkal: Használj eszközöket vagy böngésző kiegészítőket, amelyek különböző típusú színvakságot szimulálnak, hogy az információ világos maradjon
  4. Billentyűzetes navigáció: Ellenőrizd, hogy a fókusz jelzők vagy más jelzések ne csak színalapúak legyenek
  5. Automatizált tesztelés: Használj akadálymentességi tesztelő eszközöket, mint az axe DevTools, amelyek jelzik azokat az eseteket, ahol csak a szín közvetít jelentést

Jó gyakorlatok

Űrlap validáció

<label for="email">E-mail cím <span aria-hidden="true">*</span></label>
<input id="email" name="email" type="email" aria-describedby="emailHelp" required>
<span id="emailHelp">Kötelező mező</span>

<!-- Hibás mező jelölése -->
<div class="error-message" id="email-error" style="display: none;">
  <span class="error-icon" aria-hidden="true">⚠️</span> 
  Érvényes e-mail címet adj meg
</div>

<style>
  input:invalid {
    border: 2px solid red;
    border-left: 5px solid red; /* Vastagabb bal szegély */
  }
  
  .error-message {
    color: red;
    font-weight: bold;
  }
  
  .error-icon {
    margin-right: 5px;
  }
</style>

Magyarázat: Hibaüzenet vagy ikon használata a kötelező mezők jelzésére, nem csak piros szegélyek.

Linkek

<a href="felhasznalasi-feltetelek.html" class="link">Felhasználási feltételek</a>

<style>
  .link {
    color: blue;
    text-decoration: underline; /* Nem csak szín */
  }
  
  .link:hover {
    text-decoration: underline;
    font-weight: bold; /* További vizuális jelzés */
  }
  
  .link:focus {
    outline: 2px solid blue;
    outline-offset: 2px;
  }
</style>

Magyarázat: Aláhúzás vagy más vizuális jelzések használata a szín mellett.

Állapot jelzők

<div class="status-list">
  <p>Állapot: 
    <span class="status-icon success" aria-label="Sikeres" role="img">✓</span> 
    <span class="status-text">Sikeres</span>
  </p>
  
  <p>Állapot: 
    <span class="status-icon warning" aria-label="Figyelmeztetés" role="img">⚠</span> 
    <span class="status-text">Figyelmeztetés</span>
  </p>
  
  <p>Állapot: 
    <span class="status-icon error" aria-label="Hiba" role="img">✗</span> 
    <span class="status-text">Hiba</span>
  </p>
</div>

<style>
  .status-icon.success { color: green; }
  .status-icon.warning { color: orange; }
  .status-icon.error { color: red; }
  
  .status-text {
    font-weight: bold;
    margin-left: 5px;
  }
</style>

Magyarázat: Szín kombinálása ikonokkal vagy szöveges címkékkel.

Adatvizualizáció

<div class="chart-legend">
  <div class="legend-item">
    <span class="legend-color" style="background: #ff0000;"></span>
    <span class="legend-pattern" aria-hidden="true">▬▬▬</span>
    <span class="legend-text">Eladások (2023)</span>
  </div>
  
  <div class="legend-item">
    <span class="legend-color" style="background: #00ff00;"></span>
    <span class="legend-pattern" aria-hidden="true">▬ ▬ ▬</span>
    <span class="legend-text">Eladások (2024)</span>
  </div>
</div>

<style>
  .legend-item {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
  }
  
  .legend-color {
    width: 20px;
    height: 20px;
    margin-right: 10px;
  }
  
  .legend-pattern {
    margin-right: 10px;
    font-family: monospace;
  }
</style>

Magyarázat: Minták, formák vagy címkék használata diagramokban, nem csak színek az adatsorok megkülönböztetésére.

Navigációs elemek

<nav>
  <ul class="navigation">
    <li><a href="/" class="nav-link">Főoldal</a></li>
    <li><a href="/termekek" class="nav-link active" aria-current="page">
      Termékek <span class="sr-only">(jelenlegi oldal)</span>
    </a></li>
    <li><a href="/kapcsolat" class="nav-link">Kapcsolat</a></li>
  </ul>
</nav>

<style>
  .nav-link {
    color: blue;
    text-decoration: none;
    padding: 10px 15px;
    border-bottom: 2px solid transparent;
  }
  
  .nav-link.active {
    color: red;
    border-bottom: 2px solid red; /* Szín + vonal */
    font-weight: bold; /* További megkülönböztetés */
  }
  
  .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
  }
</style>

Rossz gyakorlatok

Csak piros szöveggel jelzett hiba

<p style="color: red;">Hiba: Érvénytelen bemenet</p>

Probléma: Nincs más jelző a színen kívül.

Kötelező mezők jelölése csak színváltással

<label style="color: red;">Név</label>

Probléma: Nincs más jelzés a mező kötelező voltára.

Csak színváltozáson alapuló fókusz jelzés

<style>
button:focus {
  outline: none;
  background-color: yellow; /* Nincs látható keret vagy más fókusz jelző */
}
</style>

Probléma: A fókusz csak színváltozással jelzett, nincs keret vagy más vizuális jelzés.

Táblázat sorok megkülönböztetése csak háttérszínnel

<table>
  <tr style="background-color: lightgray;">
    <td>Adat 1</td>
    <td>Adat 2</td>
  </tr>
  <tr style="background-color: white;">
    <td>Adat 3</td>
    <td>Adat 4</td>
  </tr>
</table>

Probléma: A sorok csak háttérszínnel különböztethetők meg, nincs más vizuális segítség.

Források

Iratkozz fel hírlevelünkre!

Amennyiben szeretnél első kézből értesülni az új bejegyzésekről, iratkozz fel hírlevelünkre!

Ez a weboldal sütiket használ a böngészési élmény javítása és a webhely megfelelő működésének biztosítása érdekében. A webhely használatának folytatásával elismeri és elfogadja a sütik használatát.

Összes elfogadása Csak a szükségesek elfogadása