Gerador de Transformação

Crie e visualize visualmente as propriedades de transformação CSS.

CSS Transform é uma poderosa propriedade CSS que permite transformar elementos da web no espaço 2D ou 3D. Através de transformações como translação, rotação, escala e inclinação, você pode criar designs da web dinâmicos e interativos. Crie facilmente os efeitos desejados com a visualização em tempo real.

Configurações de Transformação
Ajuste cada propriedade de transformação
Visualizar
Verifique o efeito de transformação gerado
Transform
CSS Gerado
transform: none;
Predefinições
Experimente estilos de transformação predefinidos
Referência da Função de Transformação

Funções de Transformação

  • translate(x, y): translate(x, y): Mover elemento pela quantidade x, y
  • scale(x, y): scale(x, y): Escalar elemento pela proporção x, y
  • rotate(angle): rotate(ângulo): Girar elemento pelo ângulo
  • skew(x, y): skew(x, y): Inclinar elemento pelos graus x, y

Dicas de Uso

  • • Múltiplas funções de transformação podem ser combinadas com espaços
  • • Mude a origem da transformação com transform-origin
  • • Use com transição para criar efeitos de animação
  • • Use a propriedade perspective para transformações 3D
📚 Guia Completo de Transformação CSS
Guia detalhado para dominar a Transformação CSS

🎯 Conceitos Básicos de Transformação

CSS Transform é uma propriedade CSS que altera a forma, tamanho e posição dos elementos. Permite a transformação visual de elementos sem interromper o fluxo normal do documento.

Sintaxe básica:

transform: function(value) function(value) ...;

📐 Detalhes da Função de Transformação

🔄 Transladar (Movimento)

  • translate(x, y): translate(x, y): Mover ao longo dos eixos X, Y
  • translateX(x): translateX(x): Mover apenas ao longo do eixo X
  • translateY(y): translateY(y): Mover apenas ao longo do eixo Y
  • translate3d(x, y, z): translate3d(x, y, z): Movimento 3D
transform: translate(50px, 100px);

📏 Escala (Redimensionamento)

  • scale(x, y): scale(x, y): Escalar eixos X, Y
  • scaleX(x): scaleX(x): Escalar apenas o eixo X
  • scaleY(y): scaleY(y): Escalar apenas o eixo Y
  • • Maior que 1 aumenta, menor que 1 diminui
transform: scale(1.5, 0.8);

🔄 Girar (Rotação)

  • rotate(angle): rotate(ângulo): Girar em torno do eixo Z
  • rotateX(angle): rotateX(ângulo): Girar em torno do eixo X
  • rotateY(angle): rotateY(ângulo): Girar em torno do eixo Y
  • • Use unidades deg, rad, turn para ângulos
transform: rotate(45deg);

📐 Inclinar (Cisalhamento)

  • skew(x, y): skew(x, y): Inclinar ao longo dos eixos X, Y
  • skewX(angle): skewX(ângulo): Inclinar ao longo do eixo X
  • skewY(angle): skewY(ângulo): Inclinar ao longo do eixo Y
  • • Transformar em forma de paralelogramo
transform: skew(15deg, 5deg);

🎨 Origem da Transformação (Ponto de Transformação)

A propriedade transform-origin define o ponto de origem da transformação. O padrão é o centro do elemento (50% 50%).

Usando palavras-chave

transform-origin: top left;

Usando porcentagens

transform-origin: 25% 75%;

Usando pixels

transform-origin: 10px 20px;

⚡ Dicas de Otimização de Desempenho

✅ Recomendações

  • • Anime apenas transform e opacity
  • • Use a propriedade will-change
  • • Use aceleração 3D (translateZ(0))
  • • Crie camadas compostas para melhor desempenho

❌ Coisas a Evitar

  • • Animar largura, altura
  • • Animar posições left, top
  • • Aninhamento excessivo de transformações
  • • Uso desnecessário de will-change

Exemplo de otimização de desempenho:

.optimized {
will-change: transform;
transform: translateZ(0); /* 3D 가속 */
transition: transform 0.3s ease;
}

🎬 Animação e Transições

Transform pode ser usado com CSS Transition e Animation para criar efeitos suaves.

Exemplo de transição

.hover-effect {
transition: transform 0.3s ease;
}
.hover-effect:hover {
transform: scale(1.1) rotate(5deg);
}

Exemplo de Animação de Keyframe

@keyframes bounce {
0%, 100% { transform: translateY(0); }
50% { transform: translateY(-20px); }
}
.bounce { animation: bounce 1s infinite; }

🌐 Compatibilidade do Navegador

CSS Transform é suportado em todos os navegadores modernos, mas prefixos de fornecedores podem ser necessários para navegadores mais antigos.

Exemplo de prefixo de fornecedor:

-webkit-transform: rotate(45deg); /* Safari, Chrome */
-moz-transform: rotate(45deg); /* Firefox */
-ms-transform: rotate(45deg); /* IE 9 */
transform: rotate(45deg); /* 표준 */

🎯 Exemplos de Uso no Mundo Real

Efeito de hover em cartão

.card {
transition: transform 0.3s ease;
cursor: pointer;
}
.card:hover {
transform: translateY(-10px) scale(1.02);
}

Spinner de carregamento

@keyframes spin {
from { transform: rotate(0deg); }
to { transform: rotate(360deg); }
}
.spinner {
animation: spin 1s linear infinite;
}

Efeito de entrada de modal

.modal {
transform: scale(0) rotate(180deg);
transition: transform 0.3s ease;
}
.modal.show {
transform: scale(1) rotate(0deg);
}

Efeito de clique de botão

.button {
transition: transform 0.1s ease;
}
.button:active {
transform: scale(0.95);
}

🔧 Ferramentas de Depuração e Desenvolvimento

Ferramentas de Desenvolvedor do Navegador

  • • Edição em tempo real no painel Elementos
  • • Verifique os valores finais na guia Computado
  • • Análise de desempenho com a guia Desempenho
  • • Verifique a estrutura da camada com a Visualização 3D

Propriedades CSS Úteis

  • transform-style: preserve-3d
  • perspective: 1000px
  • backface-visibility: hidden
  • will-change: transform

💡 Dicas Profissionais

Dica de Desempenho

Usar transform3d() ou translateZ(0) para criar camadas compostas para aceleração de GPU pode melhorar significativamente o desempenho da animação.

Dica de Acessibilidade

Use a media query prefers-reduced-motion para fornecer alternativas para usuários sensíveis ao movimento.

Dica de Design

Definir corretamente transform-origin pode criar efeitos de transformação mais naturais.

Dica de Desenvolvimento

Usar variáveis CSS para controlar dinamicamente os valores de transformação facilita a integração com JavaScript.

    Gerador de Transformação