Generic link hover color overrides header cart icon color
Los mantenedores suelen responder en 1 día
@HardeepAsrani ya está trabajando en esto.
Desde el 30/9/2026.
Evaluación
Este issue todavía no se ha evaluado.
Descripción
Summary
The header cart icon does not retain its configured hover color after the recent Neve update. The cart link is expected to use its component --hovercolor value while hovered, but the inspected CSS cascade applies Neve's secondary accent instead. This prevents the cart component's color setting from determining the visible hover state and has led to a child-theme !important workaround.
Customer context
Product / area: Neve header cart component with Neve Pro styling active
Version: Exact installed versions were not provided; the relevant Neve change first shipped in 4.2.13 and remains in 4.2.14
Environment: WordPress frontend using WooCommerce and a child theme
Integration / third party: WooCommerce; Neve Pro Addon is present
Reported error / symptom: Cart icon hover color resolves to the Neve secondary accent rather than the component hover color
Impact: Configured cart styling is not reflected without a CSS specificity workaround
Reproduction notes
- Use Neve 4.2.13 or 4.2.14 with WooCommerce and a header cart component.
- Configure a cart hover color distinct from Neve's secondary accent.
- Hover the
.cart-icon-wrapperlink or focus it with the keyboard. - Observe that the computed color comes from the generic Neve link-state rule rather than the cart component's configured hover value.
The customer supplied the conflicting selectors and reported that an !important child-theme override restores the desired state. A clean local runtime reproduction was not performed.
Diagnosis
Conclusion
This is a confirmed CSS-specificity regression. Neve 4.2.13 changed the generic hover/focus color selector from a:hover / a:focus to a:not([class*="button"]):hover / :focus. The resulting selector has greater specificity than .cart-icon-wrapper:hover, so the global secondary-accent color wins over the cart component's configured color. Commit 17a3c2e0da2446dd162acc4459ada710bbb91ed2 introduced the selector; tag comparison shows the lower-specificity behavior in 4.2.12 and the conflict in 4.2.13. No later typography change exists through 4.2.14.
Where this likely occurs
- User-visible surface: WooCommerce cart component in the Neve header on hover and focus.
assets/scss/components/main/_typography.scss— global anchor state rules, approx. lines 52–60, selectora:not([class*="button"]): assigns--nv-secondary-accentwith specificity above the cart rule.assets/scss/components/compat/woocommerce/_nav-cart.scss— cart component styling, lines 6–12, selector.cart-icon-wrapper:hover: assigns--hovercolorwith a fallback to--colorbut loses the cascade.header-footer-grid/templates/components/component-cart-icon.php— cart component template, approx. line 52, emits the affected anchor with classcart-icon-wrapper.- Git history: commit
17a3c2e0dis contained in release tags 4.2.13 and 4.2.14; release 4.2.12 retains the lower-specificity generic anchor selector.
Engineering notes
The cart anchor class does not contain button, so it is inside the new global selector's scope. The inspected conflict is deterministic from the emitted selectors: the global rule has specificity (0,2,1), while the cart hover rule has (0,2,0). The cart SVG inherits the anchor's currentColor through the component styling path. The defect is routed to Neve because both the regression-producing global selector and the cart component's intended hover rule are in the theme repository.
Test coverage status
tests/test-neve-cart-guards.php checks cart rendering guards and the presence of cart-icon-wrapper, but not computed styling. The Neve Pro WooCommerce Booster e2e suites cover cart behavior, while the searched Neve and Pro suites contain no computed hover-color assertion for cart-icon-wrapper. No relevant color-state coverage was found during inspection.
What to verify or explore next
- Reproduce with Neve 4.2.14 by assigning distinct secondary-accent and cart hover colors, then inspect the cart link's computed color during hover and keyboard focus.
- Compare the same WooCommerce header configuration under Neve 4.2.12 and 4.2.13 to validate the identified release boundary at runtime.
- Run the Neve cart guard test and relevant WooCommerce Booster Playwright suites after exercising the computed hover/focus color path.
Unknowns / follow-up
The customer's exact Neve, Neve Pro, and WooCommerce versions were not stated. Runtime reproduction was not performed, but the reported selectors and deterministic cascade match the inspected released source.
Confidence
Confidence: 98/100
Repository inspection confirms that Neve 4.2.13 increased the generic link-state selector's specificity above both affected header-component selectors, and the regression remains in 4.2.14. No matching open GitHub issue was found for either independently testable symptom.
Source: HelpScout #3466631245
Generated by bug-report-triage (ID: bug-report-triage_6abbeeb198c984.22566267)
- Lenguaje dominante
- PHP
- Estrellas
- 307
- Forks
- 88
- Merge medio
- 2 d 21 h
- PR fusionados (30 d)
- 15
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de Codeinwp/neve
-
Customizer responsive sanitizer fatals when input is an arrayPosiblemente ocupada @HardeepAsrani la tomó hace 8 días. Abiertobug-report bug-report-triage crash-report
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
Codeinwp/neve#4651 · 2 comentarios · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Customizer controls script throws when WooCommerce is inactive and an Elementor shop template exists (woocommerce_product_catalog section missing)Posiblemente ocupada @girishpanchal30 la tomó hace 4 días. Abiertobug-report bug-report-triage customer report
Codeinwp/neve#4653 · 3 comentarios · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Duplicate H1: hidden screen-reader title H1 rendered alongside custom layout H1 when page title is hiddenPosiblemente ocupada @HardeepAsrani la tomó hace 5 días. Abiertobug-report bug-report-triage customer report
Dificultad 4/5 1-2 días Aptitud para principiantes 48/100
Codeinwp/neve#4652 · 2 comentarios · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
feature-request-triage
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
Los mantenedores suelen responder en 1 día
-
feature-request-triage
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
Los mantenedores suelen responder en 1 día
Todos los issues de Codeinwp/neve
Issues similares
-
PHP workflow streaming requests buffer the full SSE responsePosiblemente ocupada @Winoren la tomó hoy. Abiertoreview: medium
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
langgenius/dify#44270 · 1 comentario · 1 reacción ·
Los mantenedores suelen responder en 1 día
-
bug customer-reported
Dificultad 1/5 Menos de una hora Aptitud para principiantes 90/100
MagnaCapax/PMSS#1085 ·
Los mantenedores suelen responder en 5 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 83/100
nunomaduro/collision#375 ·
-
enhancement good first issue hacktoberfest help wanted
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
thetheago/laravel-seeder-versioning#19 ·
Los mantenedores suelen responder en 1 día