Gerador CSS Border Radius

Crie cantos arredondados visualmente e copie o CSS.

Seus dados não saem do seu dispositivo
20
20
20
20

Predefinições

Como usar

  1. Arraste os controles deslizantes para ajustar o raio de cada canto.
  2. Ative « Vincular todos os cantos » para modificar tudo de uma vez.
  3. Escolha uma unidade (px, %, rem, em).
  4. Clique em « Copiar o CSS » para colocar a propriedade na sua área de transferência.

Perguntas frequentes

Como fazer um círculo ?

Defina todos os cantos em 50 % (use a predefinição « Círculo / Pílula »). Para um círculo perfeito, aplique-o a um elemento quadrado.

Qual é o raio máximo ?

O controle deslizante vai até 100. Em px, isso dá 100 px. Em %, 100 % significa totalmente arredondado nesse canto. Você pode mudar a unidade de acordo com o seu design.

Entendendo o atalho border-radius

A propriedade CSS border-radius é definida no W3C CSS Backgrounds and Borders Module Level 3. O seu atalho aceita até quatro valores para cantos circulares e até oito (separados por uma barra) para cantos elípticos. A ordem dos cantos é fixa: superior-esquerdo, superior-direito, inferior-direito, inferior-esquerdo, no sentido horário a partir do superior-esquerdo, exatamente como você leria o mostrador de um relógio. A spec é inequívoca: «Se o canto inferior-esquerdo for omitido, ele é igual ao superior-direito. Se o inferior-direito for omitido, ele é igual ao superior-esquerdo. Se o superior-direito for omitido, ele é igual ao superior-esquerdo».

ValoresSignificadoExemplo
1 valorOs quatro cantosborder-radius: 12px
2 valoresTL+BR recebem o primeiro; TR+BL recebem o segundoborder-radius: 12px 4px
3 valoresTL=primeiro; TR+BL=segundo; BR=terceiroborder-radius: 12px 8px 4px
4 valoresTL TR BR BL no sentido horárioborder-radius: 12px 8px 4px 0
8 valores (com /)Raios horizontais / raios verticais (cantos elípticos)border-radius: 30% 70% 70% 30% / 30% 30% 70% 70%

As quatro propriedades longas por canto permitem mirar um único canto sem escrever os outros: border-top-left-radius, border-top-right-radius, border-bottom-right-radius, border-bottom-left-radius. Cada uma aceita um valor (um canto circular) ou dois valores (um x y elíptico).

Pixels, porcentagens e o truque dos 50%

A spec do W3C define como as porcentagens são resolvidas: «As porcentagens para o raio horizontal se referem à largura da caixa de borda, enquanto as porcentagens para o raio vertical se referem à altura da caixa de borda.» Isso produz uma consequência importante: border-radius: 50% cria um círculo perfeito apenas quando o elemento é quadrado. Em um retângulo 200×100, 50% em cada canto produz uma elipse: 100px de raio horizontal (metade da largura) e 50px de raio vertical (metade da altura).

Quando recorrer a cada unidade:

O truque da pílula

Definir um border-radius maior do que metade do lado mais curto do elemento limita cada canto a um semicírculo verdadeiro, produzindo uma forma de pílula independentemente da largura. A convenção é border-radius: 9999px, qualquer número grande o suficiente para que nenhum elemento realista jamais o exceda. É por isso que o .rounded-pill do Bootstrap usa 50rem (~800px) e o rounded-full do Tailwind v4 resolve para calc(infinity * 1px): ambos codificam a mesma ideia, a de que um número maior do que a caixa garante uma pílula em qualquer elemento.

Cantos elípticos e formas orgânicas de blob

A forma de oito valores (com barra) é o que os designers usam para criar formas «blob» orgânicas e assimétricas que se tornaram populares para ilustrações hero e fundos decorativos. Cada canto recebe um raio horizontal diferente antes da barra e um raio vertical diferente depois, produzindo curvas que não ficam presas a arcos circulares.

/* Asymmetric blob */
.blob {
  width: 280px;
  height: 280px;
  background: linear-gradient(135deg, #6366f1, #ec4899);
  border-radius: 30% 70% 70% 30% / 30% 30% 70% 70%;
}

Variantes de propriedades lógicas para layouts RTL

O CSS Logical Properties Module Level 1 introduz quatro propriedades longas lógicas que se adaptam à direção da escrita:

Útil quando o mesmo componente precisa parecer simétrico em ambas as direções de leitura: o canto «boca» de um balão de fala, por exemplo, deveria sempre ficar no lado de quem fala, não sempre à esquerda. Note que ainda não há um atalho de propriedade lógica, então você tem que escrever todas as quatro propriedades longas separadamente para optar por cantos cientes de RTL.

Borda externa vs. interna quando a borda é espessa

O raio se aplica à borda externa da borda. O navegador computa automaticamente um raio menor e concêntrico para a borda interna, para que a borda não pareça descontínua no canto. Consequência prática: um raio externo de 16px com uma borda de 2px terá um raio interno em torno de 14px, então a borda parece um quadro de espessura constante em toda a volta. Defina background-clip: padding-box se você quiser que a cor de fundo pare na borda interna em vez de vazar por baixo dela.

Convenções práticas de dimensionamento

Elemento de UIRaio típicoNotas
Cartões8-12 pxMaterial 3 médio = 12 px; muitos design systems ficam entre 8 e 16.
Botões (corporativo)4-8 pxLevemente arredondado passa profissionalismo sem ser brincalhão.
Botões (consumidor / pílula)9999pxPassa mais simpatia; trave com o truque da pílula.
Inputs / campos de formulário4-8 pxCombine com o raio dos botões para consistência visual.
Modais / caixas de diálogo12-16 pxSuperfícies maiores toleram raios maiores sem parecer infantis.
Tags / badges4 px ou pílulaUma escolha estilística clara: reto ou totalmente arredondado, raramente um meio-termo.
Avatares50%Aplique a um elemento quadrado para obter um círculo perfeito.
Bottom sheets de celular16-24 px (apenas cantos superiores)Use propriedades longas individuais para que os cantos inferiores fiquem rentes à borda da tela.
Fundos hero estilo blobOito valorespor exemplo, 30% 70% 70% 30% / 30% 30% 70% 70%.

Erros comuns

  1. Usar 50% em um elemento não quadrado e esperar um círculo. 50% em um retângulo é uma elipse. Ou mantenha o elemento quadrado, ou use border-radius: 9999px para uma pílula de verdade.
  2. Esquecer a ordem dos cantos. O atalho vai no sentido horário a partir do superior-esquerdo (TL TR BR BL). A forma de dois valores define os pares diagonalmente opostos, o que é fácil de lembrar errado.
  3. Valores negativos. A spec os define como inválidos; o navegador silenciosamente os limita a zero. Se um canto não está arredondando do jeito que você espera, verifique se você não subtraiu por acidente.
  4. Pais arredondados vazando os filhos. Um elemento com border-radius não recorta os seus descendentes por padrão. Adicione overflow: hidden no pai se você quiser que os filhos parem na borda arredondada.
  5. Propriedades por canto antes do atalho. A cascata do CSS é sensível à ordem, então border-top-left-radius seguido de border-radius sobrescreve o valor por canto. Coloque o atalho primeiro, depois as sobrescritas por canto.
  6. Misturar % e px de forma desajeitada. Definir um raio de 50% em um canto e 12px em outro raramente produz o que os designers esperam. Fique em uma unidade por elemento.
  7. Tabelas e border-collapse: collapse. A referência do MDN é explícita: o border-radius não se aplica a elementos table ou inline-table quando as bordas estão colapsadas. Ou mude para border-collapse: separate, ou aplique o raio a um elemento envoltório.

Mais perguntas frequentes

Por que a minha imagem não está ficando com cantos arredondados?

Se a imagem está dentro de um contêiner com border-radius mas os cantos ainda parecem retos, o pai não está recortando. Adicione overflow: hidden ao pai. Como alternativa, aplique border-radius diretamente ao elemento <img>; as imagens respondem à propriedade nativamente.

O border-radius afeta o desempenho?

Desprezivelmente. Os navegadores modernos renderizam os cantos arredondados na GPU e o custo é essencialmente idêntico ao de uma borda reta. A exceção é animar o border-radius em um elemento grande a cada quadro (pode disparar a recomposição de camadas), mas os cantos arredondados estáticos são, na prática, de graça.

Isso funciona em navegadores mais antigos?

Sim. Todo navegador desde o IE9 suporta o border-radius sem prefixo. As variantes de propriedade lógica (border-start-start-radius etc.) são mais novas: Chrome 89+, Firefox 66+, Safari 15+. Para navegadores mais antigos que precisam do comportamento lógico, escreva um pequeno bloco @supports como fallback.

Como eu faço um balão de fala?

Use as quatro propriedades longas por canto para arredondar três cantos e deixar o quarto pequeno ou reto. Essa é a «boca» apontando para quem fala. Por exemplo, um balão de mensagem enviada: border-radius: 16px 16px 4px 16px;. Para balões cientes de RTL, mude para propriedades longas lógicas, para que a boca vire com a direção de leitura.

Por que os meus botões pílula parecem irregulares em larguras de elemento diferentes?

Uma pílula limita cada canto a metade do lado mais curto, que é a altura em um botão típico. Então botões mais baixos recebem raios menores e botões mais altos recebem raios maiores. Esse é o comportamento desejado. Se você quer um raio constante em todo botão independentemente do tamanho, use um valor fixo em pixels (por exemplo, border-radius: 24px) em vez do truque da pílula.

Posso copiar o CSS direto para projetos Tailwind / Bootstrap?

Sim, o CSS gerado é sintaxe padrão simples, sem dependências de pré-processador ou framework. No Tailwind v4, você também pode escrever valores arbitrários como utilitários (rounded-[12px] ou rounded-[30%/70%]) se preferir ficar no estilo de classes utilitárias.

Ferramentas relacionadas

Gerador CSS Box Shadow Gerador de gradiente CSS Minificador de CSS