Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

MediaWiki:Common.css: Difference between revisions

MediaWiki interface page
No edit summary
Tag: Reverted
No edit summary
Tag: Reverted
Line 1: Line 1:
/* =================================================================== */
/* =================================================================== */
/* EFEITO FINAL: BORDA COM BRILHO ANIMADO                            */
/* TÉCNICA FINAL: EFEITO DE BORDA ANIMADA (À PROVA DE CONFLITOS)    */
/* Combina todas as correções: borda, overflow e hover.           */
/* Usa ::before para o brilho e ::after para o fundo sólido.         */
/* =================================================================== */
/* =================================================================== */


/* --- CONFIGURAÇÃO E FALLBACK (Funciona em todos os navegadores) --- */
.scw-gradient-glow {
.scw-gradient-glow {
     /* --- Layout e Posicionamento --- */
     /* --- Contêiner Principal --- */
    display: inline-block; /* Comportamento de botão */
     position: relative;
     position: relative;   /* Contexto para o brilho */
     display: inline-block;
     isolation: isolate;   /* Previne que o z-index afete o fundo da página */
     cursor: pointer;
     overflow: hidden;     /* Previne que a animação "vaze" para fora */
     padding: 10px 18px; /* << AJUSTE o espaçamento interno do botão */
 
     border-radius: 4px; /* << AJUSTE o arredondamento */
    /* --- Estilos Visuais (AJUSTE COMO QUISER) --- */
     color: white;       /* << Cor inicial do texto */
     padding: 8px 16px;     /* Espaçamento interno do botão */
     background: transparent; /* O contêiner em si é transparente */
    color: white;          /* Cor do texto */
     transition: color 0.2s ease-in-out; /* Transição suave para a cor do texto no hover */
     border-radius: 4px;   /* Arredondamento dos cantos */
 
    /* --- A TÉCNICA DA BORDA --- */
     --button-bg-color: #1a242e;   /* << AJUSTE: Cor do interior do botão */
     border: 2px solid transparent; /* << AJUSTE: Espessura da borda animada */
     background-color: var(--button-bg-color);
    background-clip: padding-box; /* Impede a cor de fundo de pintar a área da borda */
}
}


/* Camada de Baixo: O Brilho Giratório */
.scw-gradient-glow::before {
.scw-gradient-glow::before {
     content: '';
     content: '';
     position: absolute;
     position: absolute;
     z-index: -1;         /* Coloca o brilho atrás do botão */
    left: 0; top: 0;
     pointer-events: none; /* Conserta o hover e cliques */
    width: 100%; height: 100%;
    /* Faz o gradiente preencher até a borda (deve ser o negativo da espessura da borda) */
     z-index: -2; /* Fica atrás de tudo */
    inset: -2px;
     border-radius: inherit; /* Segue o arredondamento do pai */


     /* --- Gradiente Animado --- */
     /* Gradiente */
     --clr-3: #59cffc;
     --clr-3: #59cffc;
     --clr-4: #38556a;
     --clr-4: #38556a;
Line 42: Line 35:
}
}


/* Camada do Meio: O Fundo Sólido do Botão */
.scw-gradient-glow::after {
    content: '';
    position: absolute;
    z-index: -1; /* Fica na frente do brilho, mas atrás do texto */
    /* Cria a "borda" de 2px, pois é 2px menor que o ::before em cada lado */
    inset: 2px;
    /* O raio da borda interna deve ser um pouco menor que o do contêiner */
    border-radius: 2px;
    /* Cor de fundo inicial do botão */
    background: #1a242e; /* << AJUSTE a cor de fundo padrão */
    transition: background 0.2s ease-in-out; /* Transição suave para a cor do hover */
}
/* --- O EFEITO DE HOVER --- */
.scw-gradient-glow:hover::after {
    background: #c7b00f; /* << AJUSTE a cor de fundo do hover (amarelo) */
}
.scw-gradient-glow:hover {
    color: black; /* << AJUSTE a cor do texto no hover */
}
/* --- Animação (Fallback para navegadores antigos) --- */
@keyframes scw-gradient-rotate-fallback {
@keyframes scw-gradient-rotate-fallback {
     0% { transform: rotate(0deg); }
     0% { transform: rotate(0deg); }
Line 47: Line 65:
}
}


 
/* --- MELHORIA PARA NAVEGADORES MODERNOS (ignorado por navegadores antigos) --- */
/* --- MELHORIA PARA NAVEGADORES MODERNOS --- */
@supports (syntax: '<angle>') {
@supports (syntax: '<angle>') {


Line 60: Line 77:
         background: conic-gradient(from var(--gradient-angle), var(--gradient));
         background: conic-gradient(from var(--gradient-angle), var(--gradient));
         animation: scw-gradient-rotate-modern var(--gradient-time) linear infinite;
         animation: scw-gradient-rotate-modern var(--gradient-time) linear infinite;
         transform: none; /* Desativa a animação de fallback */
         transform: none;
     }
     }



Revision as of 15:19, 29 July 2025

/* =================================================================== */
/* TÉCNICA FINAL: EFEITO DE BORDA ANIMADA (À PROVA DE CONFLITOS)     */
/* Usa ::before para o brilho e ::after para o fundo sólido.         */
/* =================================================================== */

.scw-gradient-glow {
    /* --- Contêiner Principal --- */
    position: relative;
    display: inline-block;
    cursor: pointer;
    padding: 10px 18px;  /* << AJUSTE o espaçamento interno do botão */
    border-radius: 4px; /* << AJUSTE o arredondamento */
    color: white;       /* << Cor inicial do texto */
    background: transparent; /* O contêiner em si é transparente */
    transition: color 0.2s ease-in-out; /* Transição suave para a cor do texto no hover */
}

/* Camada de Baixo: O Brilho Giratório */
.scw-gradient-glow::before {
    content: '';
    position: absolute;
    left: 0; top: 0;
    width: 100%; height: 100%;
    z-index: -2; /* Fica atrás de tudo */
    border-radius: inherit; /* Segue o arredondamento do pai */

    /* Gradiente */
    --clr-3: #59cffc;
    --clr-4: #38556a;
    --clr-5: #233545;
    --gradient: var(--clr-3), var(--clr-4), var(--clr-5), var(--clr-4), var(--clr-3);
    --gradient-time: 5s;
    background: conic-gradient(from 0deg, var(--gradient));
    animation: scw-gradient-rotate-fallback var(--gradient-time) linear infinite;
}

/* Camada do Meio: O Fundo Sólido do Botão */
.scw-gradient-glow::after {
    content: '';
    position: absolute;
    z-index: -1; /* Fica na frente do brilho, mas atrás do texto */
    /* Cria a "borda" de 2px, pois é 2px menor que o ::before em cada lado */
    inset: 2px;
    /* O raio da borda interna deve ser um pouco menor que o do contêiner */
    border-radius: 2px;
    /* Cor de fundo inicial do botão */
    background: #1a242e; /* << AJUSTE a cor de fundo padrão */
    transition: background 0.2s ease-in-out; /* Transição suave para a cor do hover */
}

/* --- O EFEITO DE HOVER --- */
.scw-gradient-glow:hover::after {
    background: #c7b00f; /* << AJUSTE a cor de fundo do hover (amarelo) */
}

.scw-gradient-glow:hover {
    color: black; /* << AJUSTE a cor do texto no hover */
}


/* --- Animação (Fallback para navegadores antigos) --- */
@keyframes scw-gradient-rotate-fallback {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* --- MELHORIA PARA NAVEGADORES MODERNOS (ignorado por navegadores antigos) --- */
@supports (syntax: '<angle>') {

    @property --gradient-angle {
        syntax: '<angle>';
        initial-value: 0deg;
        inherits: false;
    }

    .scw-gradient-glow::before {
        background: conic-gradient(from var(--gradient-angle), var(--gradient));
        animation: scw-gradient-rotate-modern var(--gradient-time) linear infinite;
        transform: none;
    }

    @keyframes scw-gradient-rotate-modern {
        0% { --gradient-angle: 0deg; }
        100% { --gradient-angle: 360deg; }
    }
}