Eu tenho um SVG que estou tentando centralizar em uma div. A div tem uma largura ou 900 px. O SVG tem uma largura de 400px. O SVG tem sua margem esquerda e margem direita ajustada para automático. Não funciona, apenas age como se a margem esquerda fosse 0 (padrão).
Alguém conhece o meu erro?
td
, não umdiv
As respostas acima não funcionaram para mim. Adicionar o atributo
preserveAspectRatio="xMidYMin"
à<svg>
tag fez o truque. OviewBox
atributo precisa ser especificado para que isso funcione também. Fonte: rede de desenvolvedores Mozillafonte
.container { display: flex; justify-content: center; }
E adicione a classe .container à div que contém seu svg.Depois de ler acima que o svg está embutido por padrão, acabei de adicionar o seguinte à div:
e fez o truque para mim.
Os puristas podem não gostar (é uma imagem, não um texto), mas na minha opinião HTML e CSS estragaram demais a centralização, então acho que é justificado.
fonte
Nenhuma dessas respostas funcionou para mim. Foi assim que eu fiz.
fonte
left: 100%
As respostas acima parecem incompletas, pois estão falando apenas do ponto de vista do css.
o posicionamento do svg na viewport é afetado por dois atributos svg
Siga este link do codepen para obter uma descrição detalhada
fonte
Eu tive que usar
fonte
verifique se o seu css lê:
Mesmo dizendo que a esquerda e a direita estão definidas como automáticas, você pode estar causando um erro. É claro que não saberíamos, porque você não nos mostrou nenhum código.
fonte
Você também pode fazer isso:
fonte
Coloque seu código entre isso
div
se você estiver usando o bootstrap :fonte
O Flexbox é outra abordagem: adicione
.container { display: flex; justify-content: center; }
E adicione a.container
classe à div que contém seu svg.fonte
Para mim, a correção foi adicionar
margin: 0 auto;
ao elemento que contém o<svg>
.Como isso:
fonte