Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

537
Vistas
Pestaña angular quitar línea de pestaña (.mat-ink-bar) en foco

Tengo un componente de pestaña de materiales angulares y me gustaría aplicar un comportamiento visual especial cuando la pestaña se enfoca (normalmente usando la pestaña).

En particular, me gustaría eliminar la línea del botón en la pestaña como en la siguiente imagen cuando la pestaña está enfocada y agregarla cuando está fuera de foco.

ingrese la descripción de la imagen aquí

Me doy cuenta de que la clase css para eliminar la línea de tabulación es .mat-ink-bar y debería ser algo similar a esto.

 mat-tab-group { mat-ink-bar.mat-ink-bar { display: none; } }

Estoy detectando el evento de enfoque en CSS usando este css:

 .mat-tab-label { &:focus { background-color: transparent !important; color: red !important; } }

Y finalmente, el html generado a partir del componente de materiales angulares (o al menos una parte importante) es

 <mat-tab-group class="mat-tab-group mat-primary ng-star-inserted"> <mat-tab-header class="mat-tab-header"> <div class="mat-tab-label-container"> <div class="mat-tab-list" role="tablist" style="transform: translateX(0px);"> <div class="mat-tab-labels"> <div cdkmonitorelementfocus="" class="mat-tab-label mat-focus-indicator mat-ripple mat-tab-label-active"> <div class="mat-tab-label-content">General</div> </div> </div> <mat-ink-bar class="mat-ink-bar" style="visibility: visible; left: 0px; width: 160px;"></mat-ink-bar> </div> </div> </mat-tab-header> </mat-tab-group>

El problema es que no encuentro una manera de relacionar ambas clases para aplicar el comportamiento (agregar/eliminar mat-ink-bar) ya que ambos div no están directamente relacionados y parece que el comportamiento no es posible en CSS .

Intento hacerlo en el lado angular para agregar una clase css en mat-ink-bar div (y aplicar el estilo correcto para esa nueva clase css) pero cuando agregué un oyente para detectar el foco, este evento no se detecta para pestaña (se activa para otros elementos de entrada pero no para la pestaña)

 @HostListener('focusin', ['$event']) public onFocus(event:any) { console.log(event); }

¿Alguna solución?

about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda