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

863
Vistas
Estilo html, cuerpo del componente web (Angular 2)

Estoy trabajando en un componente de inicio de LoginComponent en Angular 2 que debería "cambiar el estilo" de las etiquetas html y body , por lo que puedo colocar una imagen de fondo específica para la página de inicio de sesión.

Pero simplemente agregar un estilo para el html, body en mi login.css no parece funcionar.

¿Hay alguna manera de anular el estilo en el html, body de un componente? O cualquier elemento para el caso.

He intentado cosas como:

 :host(.btn) { ... } :host(.btn:host) { ... } .btn:host { ... }

para aplicar estilo a un elemento desde fuera del componente de inicio de Login . Pero nada parece funcionar.

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Debe cambiar la forma en que su componente sirve css usando ViewEncapsulation . De forma predeterminada, está configurado en Emulated y voluntad angular.

agregue un atributo que contenga una identificación sustituta y preprocese las reglas de estilo

Para cambiar este comportamiento, import ViewEncapsulation from 'angular2/core' y utilícelo en los metadatos del componente:

 @Component({ ... encapsulation: ViewEncapsulation.None, ... })
over 4 years ago · Santiago Trujillo Denunciar

0

No estoy seguro de si esto es exactamente lo que está buscando, pero esto no lo dejará con una imagen de fondo del cuerpo cambiada permanentemente.

Así es como lo hice para algo similar. Si desea impactar la imagen de fondo del cuerpo solo para esta página, esto puede funcionar. (No lo he probado completamente, pero parece funcionar en los navegadores de Windows).

Dentro de su componente, puede trabajar directamente a través del DOM cuando se construye el componente. Cuando se destruye, puede deshacer el cambio.

 export class SpecialBackground { constructor(){ document.body.style.backgroundImage = "url('path/to/your/image.jpg')"; document.body.style.backgroundPosition = "center center"; document.body.style.backgroundRepeat = "no-repeat"; document.body.style.backgroundAttachment = "fixed"; document.body.style.backgroundSize = "cover"; } ngOnDestroy(){ document.body.style.backgroundImage = "none"; } }

Para sus propósitos, puede usar una función diferente (en lugar del constructor) cuando se hace clic en el botón y debería estar listo.

over 4 years ago · Santiago Trujillo Denunciar

0

La forma en que lo usé es

 constructor() { document.body.className = "bg-gradient"; } ngOnDestroy(){ document.body.className=""; }

Esto agregará y eliminará dinámicamente el estilo del cuerpo de un componente en particular.

over 4 years ago · Santiago Trujillo Denunciar
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