Gerador de clip-path CSS
Arraste os vértices de um polígono ou defina círculo, elipse ou inset, e copie a declaração clip-path. Doze formas prontas.
Gerador de clip-path CSS
Arraste um vértice para movê-lo, ou foque nele e use as setas. Os quadradinhos em cada aresta adicionam um vértice ali; Delete em um vértice o remove (o mínimo é três).
clip-path: polygon(50% 0%, 100% 100%, 0% 100%);
3 vértices · valor: polygon(50% 0%, 100% 100%, 0% 100%)
Roda totalmente no seu navegador. Seus dados nunca saem do seu dispositivo.
What next?
FAQ
O recorte muda onde os cliques caem?
Sim, e esta é a parte que surpreende as pessoas. A região recortada não recebe mais eventos de ponteiro: um botão recortado em um triângulo só responde dentro do triângulo, e os cantos que você cortou deixam de ser clicáveis — mesmo que nada mais sobre o layout mudasse. Isso geralmente é o que você quer, mas também significa que uma forma decorativa grande para de pegar cliques que parecem visualmente cobrir, e um sobreposição recortada pode deixar o elemento abaixo dela alcançável em lugares que você não pretendia. Teste as partes interativas, não apenas a figura.
O elemento ainda ocupa seu espaço completo?
Sim. clip-path é uma operação em tempo de pintura. O layout é executado primeiro, a caixa mantém sua largura e altura completas, e então parte dela não é pintada. Elementos vizinhos não se movem para a lacuna, e a forma não encolhe a área rolável. Se você precisa que o texto ao redor se envolva em torno da forma, isso é shape-outside, uma propriedade diferente que leva os mesmos valores <basic-shape>.
Percentuais ou px?
Percentuais se resolvem contra a caixa de referência, então a forma escala com o elemento — um triângulo continua sendo um triângulo em qualquer largura. Valores em pixels são congelados: eles ainda medem do canto superior esquerdo da caixa, então uma forma desenhada para um cartão de 400px se verá errada no momento em que o cartão tiver 320px de largura. Use px apenas quando a geometria realmente não deve escalar. O gerador armazena percentuais internamente e converte na saída, e é por isso que mudar unidades nunca distorce a forma que você desenhou.
O que é a caixa de referência?
Por padrão a caixa de borda. Você pode mudar adicionando uma palavra-chave — clip-path: polygon(…) padding-box — então as coordenadas se resolvem contra o preenchimento, conteúdo ou caixa de margem em vez disso. Importa assim que o elemento tem uma borda: 0% 0% é a borda externa pela padrão, não o canto interno.
Por que meu círculo é uma elipse?
Não é — um raio de círculo se resolve contra a diagonal da caixa de referência, especificamente sqrt(largura² + altura²) / sqrt(2), e o resultado é sempre um círculo. Em uma caixa ampla um raio de 50% é portanto maior que a metade da altura, então o círculo é recortado pelas bordas superior e inferior e lê como uma faixa horizontal. Reduza o raio, ou use ellipse() com raios x e y separados se você quer que a forma se estique com a caixa.
Posso animar entre formas?
Apenas entre polígonos com o mesmo número de vértices, na mesma direção de enrolamento; o navegador então interpola cada ponto. Contagens de vértice diferentes, ou um polígono para um círculo, é uma troca discreta sem quadros de transição. Uma solução comum é dar à forma "simples" vértices repetidos para que ambos os estados tenham o mesmo número.
Ainda preciso do prefixo -webkit-?
Para essas formas básicas, não. clip-path não prefixado funciona em Chrome, Edge, Firefox e Safari atuais. O prefixo é um resquício do Safari mais antigo, e ele nunca suportou a sintaxe não prefixada completa de qualquer forma. O que ainda difere é clip-path: url(#svgShape), que referencia um elemento <clipPath> SVG e tem um histórico de suporte mais áspero do que as formas básicas que esta ferramenta escreve.
A forma pode ter uma borda ou uma sombra?
Não diretamente. Uma borda é pintada antes do recorte, então é cortada com tudo mais, e box-shadow segue a caixa de borda retangular em vez da silhueta recortada. Para delinear uma forma recortada, empilhe um elemento recortado ligeiramente maior por trás dela na cor do delineado; para uma sombra que segue a silhueta, envolva o elemento e coloque filter: drop-shadow() no invólucro.
Algo é enviado?
Não. A forma é editada e o CSS gerado inteiramente em seu navegador.
More design tools
- Conversor de cor e verificador de contraste — Conversor HEX ↔ RGB ↔ HSL com verificador de contraste WCAG AA/AAA.
- Gerador de paleta de cores — Gere paletas harmonizadas: análoga, complementar, triádica, monocromática.
- Verificador de Contraste WCAG — Verifique o contraste de cores conforme WCAG 2.
- Gerador de gradientes CSS — Crie gradientes lineares, radiais e cônicos com quantas paradas de cor precisar.
- Gerador de box-shadow CSS — Empilhe quantas camadas de sombra precisar e veja-as em fundo claro e escuro ao mesmo tempo.
- Quadro branco online — Desenhe diagramas e wireframes no navegador.