web design uiNovember 5, 20267 min read

رنگ لینک: چرا #0000FF شکست می‌خورد و ۸ رنگ لینک که باید به جایش استفاده کنید

آبی خالص اولین رنگ لینکی است که همه انتخاب می‌کنند و کنار متن اصلی و روی صفحه‌های تیره انتخاب اشتباهی است. زیرش خط بکشید، روی تیره روشنش کنید، لینک‌های بازدیدشده را نشان بدهید و حلقه فوکوس را نگه دارید. هشت کد همراه مقاله است.

By Boone
XLinkedIn
Link Color: Why #0000FF Fails and the 8 Link Colors to Use Instead

رنگ درست لینک آبیِ کمی ملایم‌تری است که زیرش هم خط می‌کشید، نه #0000FF به‌تنهایی. آبی خالص اولین رنگ لینکی است که همه انتخاب می‌کنند و در دو جا شکست می‌خورد: کنار متن اصلی مشکی و روی صفحه‌های تیره. اینجا چهار راه‌حل و هشت رنگی که باید به توسعه‌دهنده‌تان بدهید را می‌بینید.

چرا #0000FF شکست می‌خورد

هیچ‌کس تصمیم نمی‌گیرد از #0000FF استفاده کند. خودش از راه می‌رسد. این همان کلیدواژه blue در CSS است و اولین آبی اشباع در هر رنگ‌چین.

خود مرورگرها پیش‌فرض کمی متفاوتی دارند، یعنی #0000EE برای لینک و #551A8B برای لینک بازدیدشده، و هر دو را خط‌دار می‌کنند. خط زیرین بخشی از قرارداد اصلی است. طراحان آن را برای تمیز دیده شدن برمی‌دارند و فقط آبی را نگه می‌دارند.

بعد آبی باید کار را تنها انجام بدهد. آبی خالص خیلی تیره است. آن را وسط پاراگرافی از متن تقریباً مشکی بگذارید؛ برای کسی که در تشخیص رنگ‌ها مشکل دارد این دو تقریباً یکسان دیده می‌شوند. روی صفحه تیره بدتر است: #0000FF در پس‌زمینه فرو می‌رود.

لینک سه چیز است: یک رنگ، یک خط و یک حالت.

راه‌حل ۱: زیرش خط بکشید

فقط رنگ

پاراگرافی درباره بازگشت کالا که عبارت سیاست بازپرداخت در آن آبی و بدون خط زیرین است و داخل متن مشکی قرار دارد

خط‌دار

همان پاراگراف که سیاست بازپرداخت در آن آبی ملایم‌تری با خط زیرین دارد
همان جمله، همان لینک. در سمت چپ تنها سرنخ آبی‌ای است که به مشکیِ اطرافش نزدیک است. در سمت راست خط زیرین لینک را در یک نگاه پیدا شدنی می‌کند و #0F62FE ملایم‌تر چشم را کمتر از #0000FF اذیت می‌کند.

قاعده‌ای که پشت این کار است WCAG 1.4.1 است، یعنی استفاده از رنگ.

لینکی که فقط با رنگ مشخص شده باید به‌وضوح از متن اطرافش متمایز باشد. آبی خالص کنار مشکی خالص این‌طور نیست، اما #0F62FE کنار #161616، رنگ متنی که اینجا استفاده می‌کنیم، هست. خط زیرین مشکل را کاملاً از بین می‌برد، چون لینک دیگر به رنگ وابسته نیست.

زیر لینک‌های داخل متن روان خط بکشید. نوارهای ناوبری، دکمه‌ها و کارت‌ها فرق دارند: موقعیت و شکلشان خودش «قابل کلیک» را می‌گوید، پس خط زیرین آنجا اختیاری است.

فقط رنگ، مقیاس خاکستری

پاراگراف بازگشت کالا در مقیاس خاکستری که لینک از متن قابل تشخیص نیست

خط‌دار، مقیاس خاکستری

همان پاراگراف در مقیاس خاکستری که خط زیرین هنوز لینک را مشخص می‌کند
یک آزمون سریع: صفحه‌نمایش را روی مقیاس خاکستری بگذارید. بدون رنگ، پاراگراف چپ هیچ لینکی ندارد. پاراگراف راست هنوز دارد.

راه‌حل ۲: روی تیره روشنش کنید

#0000FF روی تیره

کارت تیره بازگشت کالا که لینک خط‌دار آبی خالص در آن روی پس‌زمینه تقریباً مشکی به‌سختی دیده می‌شود

#78A9FF روی تیره

همان کارت که لینک آبی روشن در آن به‌وضوح خودنمایی می‌کند
هر دو لینک اینجا خط‌دارند و آبی خالص هنوز سخت خوانده می‌شود. صفحه‌های تیره آبی روشن‌تری می‌خواهند.

مقایسه‌ای نزدیک نیست. #0000FF روی #161616 برای خواندن در اندازه متن اصلی بیش از حد تیره است و #78A9FF روی همان پس‌زمینه راحت خوانده می‌شود. رنگ‌های اشباعی که روی سفید کار می‌کنند روی تیره روشن‌تر و ملایم‌تر می‌شوند، همان حرکتی که برای رنگ پیام‌های خطا هم می‌زنیم.

دو آبی نگه دارید و با تم جابه‌جایشان کنید: #0F62FE روی صفحه‌های روشن و #78A9FF روی تیره. هاور یک پله جلوتر می‌رود: #0043CE روی روشن و #A6C8FF روی تیره.

راه‌حل ۳: نشان بدهید مردم کجا بوده‌اند

همه لینک‌ها تازه به نظر می‌رسند

فهرست «بعدی را بخوانید» با سه لینک آبی خط‌دار که همه یکسان دیده می‌شوند

بازدیدشده بنفش می‌شود

همان فهرست که دو لینکِ قبلاً بازشده در آن بنفش‌اند
فهرست مقاله‌ها در عین حال نقشه‌ای از چیزهایی است که قبلاً خوانده‌اید. وقتی لینک‌های بازدیدشده و تازه یکسان دیده می‌شوند، مردم یک صفحه را دو بار باز می‌کنند و ردّ بقیه را گم می‌کنند.

گروه Nielsen Norman از سال ۲۰۰۴ این را می‌گوید: وقتی لینک‌های بازدیدشده و تازه یک رنگ دارند، مردم گم می‌شوند و دور خودشان می‌چرخند. بنفش قرارداد است و مرورگرها از ابتدا از آن استفاده کرده‌اند. روی صفحه‌های روشن از #8A3FFC و روی تیره از #BE95FF استفاده کنید. فقط یک قاعده CSS خرج دارد: a:visited.

راه‌حل ۴: حلقه فوکوس را نگه دارید

outline: none

کارت ورود که لینکِ فوکوس‌شده با کیبورد در آن هیچ نشانه‌ای از فوکوس ندارد

حلقه 2px با #0F62FE

همان کارت که لینک فوکوس‌شده یک حلقه آبی واضح دورش دارد
کسی که در این صفحه با Tab جلو می‌رود باید ببیند کجاست. در سمت چپ فوکوس یک جایی هست و هیچ‌کس نمی‌تواند بفهمد کجا.

کاربران کیبورد، کاربران سوییچ و هر کسی که دست ماوسش خسته است به حلقه فوکوس وابسته‌اند.

حذف آن با outline: none و نگذاشتن چیزی به جایش، WCAG 2.4.7 یعنی فوکوس قابل مشاهده را رد می‌کند. اگر حلقه پیش‌فرض مرورگر با طراحی‌تان نمی‌خواند، جایگزینش کنید. حذفش نکنید.

حلقه 2 پیکسلی به رنگ لینک، با کمی فاصله، نسخه امن است. WCAG 2.2 قوی‌ترین شکل را محیطی دست‌کم به ضخامت 2 پیکسل CSS توصیف می‌کند.

۸ رنگ لینک، روشن و تیره

روی هر چیپ بزنید تا کدش کپی شود.

تم روشن. روی یک رنگ بزنید تا کدش کپی شود.
تم تیره روی #161616. روی یک رنگ بزنید تا کدش کپی شود.
نقشروشنتیرهکاربرد
متن#161616#F4F4F4متن اصلی اطراف لینک
لینک#0F62FE#78A9FFهر لینک در حالت عادی
هاور#0043CE#A6C8FFوقتی نشانگر روی لینک است
بازدیدشده#8A3FFC#BE95FFلینک‌هایی که قبلاً باز شده‌اند

اینها توکن‌های لینک IBM Carbon هستند که از مقادیر منتشرشده تمش خوانده شده‌اند.

این را به توسعه‌دهنده‌تان بدهید

css
:root { --color-text: #161616; --color-link: #0F62FE; --color-link-hover: #0043CE; --color-link-visited: #8A3FFC; } @media (prefers-color-scheme: dark) { :root { --color-text: #F4F4F4; --color-link: #78A9FF; --color-link-hover: #A6C8FF; --color-link-visited: #BE95FF; } } a { color: var(--color-link); text-decoration: underline; text-underline-offset: 0.15em; } a:visited { color: var(--color-link-visited); } a:hover { color: var(--color-link-hover); } a:focus-visible { outline: 2px solid var(--color-link); outline-offset: 3px; }

ترتیب مهم است: :link، :visited، :hover، :focus، :active ترتیب کلاسیک است و قاعده هاوری که قبل از قاعده visited بیاید روی لینک بازدیدشده هرگز برنده نمی‌شود. سلکتور :focus-visible حلقه را برای کاربران کیبورد نشان می‌دهد و برای کلیک ماوس رد می‌شود، پس کسی دلیلی برای حذفش ندارد.

اعداد پشت «خوانا بودن»

جفت رنگکنتراست
#0000FF روی سفید8.6 به 1، قبول است و باز هم به متن مشکی خیلی نزدیک است
#0000FF روی #1616162.1 به 1، رد
#0F62FE روی سفید5.0 به 1
#0043CE روی سفید7.8 به 1
#8A3FFC روی سفید5.0 به 1
#78A9FF روی #1616167.7 به 1
#A6C8FF روی #16161610.6 به 1
#BE95FF روی #1616167.7 به 1

ردیف اول دلیل این است که ابزار بررسی کافی نیست. آبی خالص روی سفید از نظر عدد قبول می‌شود. اما در آزمون واقعی رد می‌شود، یعنی اینکه لینک با متن مشکی کنارش فرق داشته باشد یا نه.

سؤالات متداول

لینک‌ها چه رنگی باشند؟

آبی متوسطی مثل #0F62FE روی پس‌زمینه روشن و آبی روشن‌تری مثل #78A9FF روی پس‌زمینه تیره، همراه با خط زیرین در متن اصلی.

آیا #0000FF رنگ خوبی برای لینک است؟

به‌تنهایی نه. روی سفید خوب خوانده می‌شود، اما برای کسانی که آبی را نمی‌بینند خیلی به متن مشکی نزدیک است و روی پس‌زمینه تیره تقریباً ناپدید می‌شود.

آیا باید زیر لینک‌ها خط کشید؟

بله، داخل پاراگراف‌ها. WCAG 1.4.1 می‌گوید رنگ به‌تنهایی نمی‌تواند لینک را مشخص کند مگر اینکه به‌وضوح از متن اطرافش متمایز باشد، و خط زیرین این وابستگی را از بین می‌برد.

لینک‌های بازدیدشده چه رنگی باشند؟

بنفش. مرورگرها پیش‌فرض را #551A8B می‌گذارند و سیستم‌های طراحی مثل IBM Carbon روی صفحه‌های روشن از #8A3FFC و روی تیره از #BE95FF استفاده می‌کنند.

کدام رنگ لینک در حالت تیره کار می‌کند؟

آبی روشن‌تر. #78A9FF روی #161616 راحت خوانده می‌شود، در حالی که #0000FF برای خواندن در اندازه متن اصلی بیش از حد تیره است.

آیا می‌توانم خط دور فوکوس لینک‌ها را حذف کنم؟

فقط اگر آن را با نشانگر قابل مشاهده دیگری جایگزین کنید. حذفش بدون جایگزین، WCAG 2.4.7 یعنی فوکوس قابل مشاهده را رد می‌کند.

منابع

  • HTML Living Standard, Rendering: شیوه‌نامه پیش‌فرض :link را روی #0000EE و :visited را روی #551A8B می‌گذارد و لینک‌ها را خط‌دار می‌کند. #0000FF رنگ نام‌دار CSS یعنی blue است.
  • IBM Carbon color tokens، خوانده‌شده از @carbon/themes 11.40.0: link-primary #0F62FE، هاور #0043CE، بازدیدشده #8A3FFC در تم سفید؛ و #78A9FF، #A6C8FF، #BE95FF در تم g100.
  • WCAG 2, 1.4.1 Use of Color و تکنیک G183.
  • WCAG 2.4.7 Focus Visible و 2.4.13 Focus Appearance.
  • Nielsen Norman Group، Change the Color of Visited Links (Jakob Nielsen، 2004).
  • نسبت‌های کنتراست با فرمول روشنایی نسبی WCAG محاسبه شده‌اند. متن نمونه برای این صفحه ساخته شده است.
  • نخستین بار به‌صورت کاروسل در UX Brainy منتشر شد.

Want links, forms and every other state designed as one system? Our team designs and builds product UI that holds up in light and dark.

Get Started

More from Brainy Papers

Keep reading