É possível centralizar uma imagem de fundo em uma div? Eu tentei quase tudo - mas sem sucesso:
<div id="doit">
Lorem Ipsum ...
</div>
//CSS
#doit { background-image: url(images/pic.png); background-repeat: none; text-align: center; }
Isso é possível?
background-size: cover;
se você quiser a imagem inteira para mostrar sem qualquer parte da imagem que está sendo cortado fora ou esticado que pretende utilizarbackground-size: contain;
experimentar
background-position:center;
EDIT: como esta pergunta está recebendo muitas visualizações, vale a pena adicionar algumas informações extras:
text-align: center
não funcionará porque a imagem de plano de fundo não faz parte do documento e, portanto, não faz parte do fluxo.background-position:center
é uma abreviação debackground-position: center center
; (background-position: horizontal vertical
);fonte
background-position:center;
Use a posição de fundo:
fonte
Para centralizar ou posicionar a imagem de fundo, você deve usar a
background-position
propriedade A propriedade background-position define a posição inicial de uma imagem de plano de fundotop
e osleft
lados do elemento. A sintaxe CSS ébackground-position : xvalue yvalue;
.Os valores suportados "xvalue" e "yvalue" são unidades de comprimento como
px
e nomes de porcentagem e direção como esquerda, direita e etc.O "xvalue" é a posição horizontal do plano de fundo e começa na parte superior do elemento. Isso significa que, se você usá-
50px
lo, estará "50px" longe da parte superior dos elementos. E "yvalue" é a posição vertical que tem a mesma condição.Portanto, se você usar
background-position: center;
sua imagem de fundo, será centralizada.Mas eu sempre uso este código:
Eu sei que é tão confuso, mas significa:
E eu sei que também
background-size
é uma propriedade nova e, no código compactado, o que é isso,/cover
mas esses códigos significam ofill
dimensionamento e o posicionamento em segundo plano no plano de fundo da área de trabalho do Windows.Você pode ver mais detalhes sobre
background-position
em aqui ebackground-size
em aqui .fonte
Se sua imagem de plano de fundo for uma folha de sprite alinhada verticalmente, você poderá centralizar horizontalmente cada sprite da seguinte maneira:
Se sua imagem de plano de fundo for uma folha de sprite alinhada horizontalmente, você poderá centralizar verticalmente cada sprite da seguinte maneira:
Se sua planilha de sprite é compacta ou você não está tentando centralizar sua imagem de plano de fundo em um dos cenários mencionados, essas soluções não se aplicam.
fonte
Isso funciona para mim:
fonte
Isso funciona para mim:
fonte
margin: 0 auto;
onde oauto
faz centralizar horizontalmente dentro da div. Obrigado!Isso funciona para mim:
fonte
Isso funciona para mim para alinhar a imagem ao centro de div.
fonte