When refreshing a WordPress theme, site owners frequently adjust hyperlink colours to align with corporate branding. During this process, many visual designers choose to strip away default underlines to achieve a cleaner, contemporary aesthetic. However, when hyperlinks look identical or nearly identical to adjacent paragraph copy, users with low vision, colour-vision deficiencies, or situational viewing challenges cannot readily distinguish interactive elements from static sentences.
Selecting link colours in WordPress involves more than personal visual preference; it determines how easily visitors navigate content. Modifying these styles demands a disciplined balance between corporate design palettes and intuitive discoverability across diverse browsing environments.
The Mathematical Reality of Link Visibility
Web accessibility specifications outline explicit thresholds for distinguishing text. According to the W3C Technique G183 guidance, when authors rely solely on colour variations without non-colour indicators like underlines to set links apart from static body copy, the link colour must achieve at least a 3:1 relative luminance contrast ratio against the surrounding non-link text, while simultaneously meeting standard text-to-background contrast minimums and providing an additional visual cue on hover and keyboard focus. Persistent underlines are usually a simpler choice.
Stripping away underlines makes this dual-contrast requirement difficult to satisfy. The W3C Technique F73 documentation notes that removing underlines from body copy links without supplying an alternative non-colour indicator creates a direct accessibility barrier for people who cannot perceive chromatic variations. When text weight and decoration remain identical between elements, individuals with red-green colour blindness or deuteranopia may perceive the link colour as the exact shade of the neighbouring text.
Finding a single colour value that achieves a 4.5:1 ratio against a white background while concurrently maintaining a 3:1 difference against dark grey body copy drastically restricts palette selection. Retaining a persistent visual decoration sidesteps this luminance bottleneck entirely.
Non-Text Contrast and Dynamic States
Link discoverability extends beyond static default views. As outlined in the W3C Non-text Contrast Guidance, user interface components and visual focus indicators must exhibit clear contrast against adjacent surfaces. The guidance highlights that browser default underlines matching the text colour naturally satisfy non-text contrast obligations because the underlying text itself must clear basic readability standards.
When altering active, hover, or keyboard focus styling in a WordPress child theme, equal care is required. Suppressing browser focus outlines without providing an obvious visual replacement isolates visitors navigating via keyboards or switch hardware. Establishing effective interactive styling requires an efficient technical setup; see our guide on WordPress CSS delivery for interactive states for methods on enqueuing responsive visual rules cleanly.
Hypothetical Implementation: Pacific Crest Advisory
Consider Pacific Crest Advisory, a hypothetical management consultancy based in Vancouver updating its digital publication portal. Their corporate palette utilizes charcoal text (#2B3542) on an off-white background (#F9F9FB), paired with an accent teal (#006B6B) for navigational anchors.
During their initial theme redesign, developers disabled text underlines across editorial entries. For this hypothetical palette, the darker teal provides approximately a 6.0:1 contrast ratio against the off-white surface, its luminance contrast against the charcoal body text measured only 2.0:1. As a result, readers could not distinguish links from normal paragraphs unless they hovered a cursor over individual sentences.
The agency resolved this without abandoning its brand teal. Instead of searching for an awkward compromise colour, they reintroduced a discreet underline using modern CSS properties:
.entry-content p a {
color: #006B6B;
text-decoration: underline;
text-decoration-thickness: 1.5px;
text-underline-offset: 3px;
}
The underline makes the link identifiable without relying on hue. The team still checks contrast, keyboard focus and visited states in the rendered page.
Decision Framework for WordPress Link Treatments
Choosing an appropriate visual treatment depends on the placement of the link and the flexibility of your existing corporate palette.
| Treatment Method | Contrast Requirement | Palette Flexibility | Recommended Context |
|---|---|---|---|
| Underline with Brand Colour | 4.5:1 against page background | High; no requirement to contrast against adjacent text | Standard blog posts, technical documentation, editorial content |
| Text-Underline Offset or Border | 4.5:1 text against surface; border clearly visible | High; permits distinctive weights and styles | Modern magazine layouts, portfolio case studies |
| Colour-Only Differentiation | 4.5:1 against background AND 3:1 against body text, plus hover/focus cues | Extremely restricted; few colour pairings succeed | Constrained interfaces where underlines compromise clarity |
| High-Contrast Background Tint | 4.5:1 text against tint; tint distinct from canvas | Moderate; requires careful box padding management | Sidebar links, meta tags, categorized taxonomy lists |
Canada Create™ builds and optimizes WordPress sites for Toronto businesses. Tell us your goals and we will recommend the right setup.
Troubleshooting Link Visibility in WordPress
When customizing link presentation within modern WordPress environments, unexpected styling conflicts generally originate from three common areas:
- Theme JSON Specificity: Modern block themes leverage global styles defined in
theme.json. Global styles and custom CSS can compete through selector specificity and load order. Inspect the computed styles to identify the rule winning on the actual link. - Plugin Stylesheet Conflicts: Form builders, e-commerce add-ons, and visual layout plugins regularly load stylesheets containing global
a { text-decoration: none !important; }rules. Inspecting targets with browser developer tools isolates these aggressive declarations so child themes can neutralize them. - Neglected Visited States: Overlooking the
:visitedpseudo-class can result in web browsers substituting default dark purple shades, which may create unreadable text on dark layout sections. Always define deliberate colours for visited links that retain proper contrast.
Practical Implementation Checklist
Review this checklist before publishing styling modifications to your WordPress production environment:
- Confirm link text clears at least a 4.5:1 contrast ratio against underlying page backgrounds.
- Retain persistent underlines or distinctive non-colour markers on links embedded within body paragraphs.
- Evaluate any underline-free links to verify they achieve at least a 3:1 contrast ratio against neighbouring body copy.
- Define distinct
:hoverand:focus-visibleindicators that do not rely exclusively on subtle hue shifts. - Examine pages in greyscale using browser developer tools to ensure clickable phrases remain visible without relying only on colour. Greyscale is a useful supplementary check, not a substitute for contrast calculations or accessibility testing.
Adhering to measured contrast rules allows site owners to implement distinctive brand colours across WordPress themes while supporting clearer navigation across the tested conditions.
Frequently Asked Questions
How do I change link colours in WordPress?
Use the theme’s global styles, the Customizer or custom CSS.
What colour contrast do links need?
At least 4.5:1 contrast against the background for normal text under WCAG.
Should links be underlined?
In body text, underlines make links easy to spot.
Who can update my site design?
Our website design team.


