Centrar la imagen usando text-align center?
¿Es la propiedad text-align: center;
una buena manera de centrar una imagen usando CSS?
img {
text-align: center;
}
22 answers
Eso no funcionará ya que la propiedad text-align
se aplica a contenedores de bloque, no a elementos inline, y img
es un elemento inline. Véase las especificaciones del W3C.
Usa esto en su lugar:
img.center {
display: block;
margin: 0 auto;
}
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-09-25 00:10:49
Eso no siempre funciona... si no lo hace, intente:
img {
display: block;
margin: 0 auto;
}
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-08-14 06:24:16
Se encontró con este post y funcionó para mí:
img {
position: absolute;
top: 0; bottom:0; left: 0; right:0;
margin: auto;
}
(Alineación vertical y horizontal)
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-01-07 09:18:45
Otra forma de hacerlo sería centrar un párrafo adjunto:
<p style="text-align:center"><img src="..."/></p>
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-01-20 12:51:29
Puedes hacer:
<center><img src="..." /></center>
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-08-10 09:01:34
En realidad, el único problema con su código es que el atributo text-align
se aplica al texto (sí, las imágenes cuentan como texto) dentro de la etiqueta. Deberías poner una etiqueta span
alrededor de la imagen y establecer su estilo a text-align: center
, así:
span.centerImage {
text-align: center;
}
<span class="centerImage"><img src="http://placehold.it/60/60" /></span>
La imagen estará centrada. En respuesta a su pregunta, es la forma más fácil e infalible de centrar imágenes, siempre y cuando recuerde aplicar la regla a la imagen que contiene span
(o div
).
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-22 20:03:17
Solo si necesita admitir navegadores IE antiguos.
El enfoque moderno es hacer margin: 0 auto
en su CSS.
Ejemplo aquí: http://jsfiddle.net/bKRMY /
HTML:
<p>Hello the following image is centered</p>
<p class="pic"><img src="https://twimg0-a.akamaihd.net/profile_images/440228301/StackoverflowLogo_reasonably_small.png"/></p>
<p>Did it work?</p>
CSS:
p.pic {
width: 48px;
margin: 0 auto;
}
El único problema aquí es que el ancho del párrafo debe ser el mismo que el ancho de la imagen. Si no pones un ancho en el párrafo, no funcionará, porque asumirá el 100% y tu imagen estará alineada a la izquierda, a menos que, por supuesto, uses text-align:center
.
Pruebe el violín y experimente con él si lo desea.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-08-14 06:42:08
Hay tres métodos para centrar un elemento que puedo sugerir.
-
Usando la propiedad
text-align
.parent { text-align: center; }
<div class="parent"> <img src="https://placehold.it/60/60" /> </div>
-
Usando la propiedad
margin
img { display: block; margin: 0 auto; }
<img src="https://placehold.it/60/60" />
-
Usando la propiedad
position
img { display: block; position: relative; left: -50%; } .parent { position: absolute; left: 50%; }
<div class="parent"> <img src="https://placehold.it/60/60" /> </div>
Los métodos primero y segundo solo funcionan si el padre es al menos tan ancho como la imagen. Cuando la imagen es más ancha que su padre, el ¡la imagen no permanecerá centrada!!!
Pero: Tercer método es una buena manera de que!
Aquí hay un ejemplo:
img {
display: block;
position: relative;
left: -50%;
}
.parent {
position: absolute;
left: 50%;
}
<div class="parent">
<img src="http://imgsv.imaging.nikon.com/lineup/lens/zoom/normalzoom/af-s_dx_18-140mmf_35-56g_ed_vr/img/sample/img_01.jpg" />
</div>
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-22 20:25:26
Si está utilizando una clase con imagen, lo siguiente hará
class{
display: block;
margin: 0 auto;
}
Si es solo una imagen en un calss específico que desea alinear al centro, lo siguiente hará
class img {
display: block;
margin: 0 auto;
}
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-05-18 06:26:24
img{
display: block;
margin-right: auto;
margin-left: auto;
}
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-03-15 22:22:41
Simplemente cambie la alineación del padre:)
Pruebe esta en las propiedades principales text-align:center
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-11-09 22:35:29
Puede usar text-align: center
en el padre y cambiar el img a display: inline-block
- >por lo tanto, se comporta como un elemento de texto y se centrará si el padre tiene un ancho!
img {
display: inline-block
}
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-04-29 07:25:17
En la imagen que contiene el contenedor, puede usar css3 flex box para centrar perfectamente la imagen en el interior, tanto vertical como horizontalmente. Supongamos que tiene como titular de la imagen: entonces como css Tienes que usar
.container {
display: flex;
align-items: center;
justify-content: center;
height: 100%;
}
Y esto hará que todo tu contenido dentro de este div esté perfectamente centrado.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-12-06 09:42:05
Usaría un div para centrar la alineación de una imagen. Como en:
<div align="center"><img src="your_image_source"/></div>
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-03-14 11:15:44
Si desea establecer la imagen como fondo, tengo la solución:
.image{
background-image: url(yourimage.jpg);
background-position: center;
}
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-09-28 12:28:31
Centrar una imagen que no sea de fondo depende de si desea mostrar la imagen como un elemento en línea (comportamiento predeterminado) o un elemento de bloque.
Caso de inline
Si desea mantener el comportamiento predeterminado de la propiedad CSS display de la imagen, deberá envolver su imagen dentro de otro elemento de bloque al que debe establecer text-align: center;
Caso de bloque
Si desea considerar la imagen como un elemento de bloque propio, entonces text-align
propiedad no hace un sentido, y usted debe hacer esto en su lugar:
IMG.display {
display: block;
margin-left: auto;
margin-right: auto;
}
La respuesta a su pregunta:
Es la propiedad text-align: center; una buena manera de centrar una imagen ¿usando CSS?
Sí y no.
- Sí, si la imagen es el único elemento dentro de su envoltura.
- No, en caso de que tenga otros elementos dentro de la envoltura de la imagen porque t todos los elementos secundarios que son hermanos de la imagen heredarán la propiedad
text-align
: y puede ser que no le gustaría este efecto secundario.
Referencias
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-11-02 09:27:06
Una forma más de escalar-mostrarlo:
img {
width: 60%; /* or required size of image. */
margin-left: 20% /* or scale it to move image. */
margin-right: 20% /* doesn't matters much if using left and width */
}
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-06-26 09:21:00
Use esto para su img css
img{
margin-right: auto;
margin-left: auto;
}
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-11-23 17:33:29
display: block
con margin: 0
no funcionó para mí, ni envolver con un elemento text-align: center
.
Esta es mi solución:
img.center {
position: absolute;
transform: translateX(-50%);
left: 50%;
}
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-09-28 12:26:59
Descubrí que si tengo una imagen y algo de texto dentro de un div
, entonces puedo usar text-align:center
para alinear el texto y la imagen de una sola vez.
HTML:
<div class="picture-group">
<h2 class="picture-title">Picture #1</h2>
<img src="http://lorempixel.com/99/100/" alt="" class="picture-img" />
<p class="picture-caption">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Temporibus sapiente fuga, quia?</p>
</div>
CSS:
.picture-group {
border: 1px solid black;
width: 25%;
float: left;
height: 300px;
#overflow:scroll;
padding: 5px;
text-align:center;
}
CodePen: https://codepen.io/artforlife/pen/MoBzrL?editors=1100
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-07-06 15:54:22
A veces agregamos directamente el contenido y las imágenes en wordpress admin dentro de las páginas. Cuando insertamos las imágenes en el lado del contenido y queremos alinear ese centro. El código se muestra como:
**<p><img src="https://abcxyz.com/demo/wp-content/uploads/2018/04/1.jpg" alt=""></p>**
En ese caso puedes añadir css de la siguiente manera:
Artículo p img{ margen: 0 auto; pantalla: bloque; alineación de texto: centrar; flotador: ninguno; }
Espero que ayude en esa situación.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-04-17 05:19:43
<dev class="col-sm-8" style="text-align: center;"><img src="{{URL('image/car-trouble-with-clipping-path.jpg')}}" ></dev>
Creo que este es el camino para la imagen central en el trabajo de marco laravel.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-09-08 09:48:39