¿Hay alguna forma de centrar elementos html vertical u horizontalmente dentro de los padres principales?
<center></center>etiqueta
<center>etiqueta quedó en desuso hace unos 12 años.
¿Hay alguna forma de centrar elementos html vertical u horizontalmente dentro de los padres principales?
<center></center>etiqueta
<center>etiqueta quedó en desuso hace unos 12 años.
Respuestas:
Actualización : si bien esta respuesta probablemente fue correcta a principios de 2013, ya no debería usarse. La solución adecuada utiliza compensaciones .
En cuanto a la sugerencia de otros usuarios, también hay clases nativas de arranque disponibles como:
class="text-center"
class="pagination-centered"
gracias a @Henning y @trejder
class="text-center"
.pagination-centeredcomo alternativa.
text-centerpara el diseño es una muy mala práctica. La forma correcta de alinear columnas en Bootstrap es mediante el uso de col-XX-offset-Yclases. getbootstrap.com/css/#grid-offsetting . Esta respuesta probablemente fue correcta en 2013, pero ya no debe usarse más hoy.
De la documentación de Bootstrap :
Establecer un elemento
display: blocky centrar a través demargin. Disponible como mixin y clase.
<div class="center-block">...</div>
Para futuros visitantes a esta pregunta:
Si está tratando de centrar una imagen en un div pero la imagen no se centra, esto podría describir su problema:
<div class="col-sm-4 text-center">
<img class="img-responsive text-center" src="myPic.jpg" />
</div>
La img-responsiveclase agrega una display:blockinstrucción a la etiqueta de imagen, que impide que text-align:center( text-centerclase) funcione.
SOLUCIÓN:
<div class="col-sm-4">
<img class="img-responsive center-block" src="myPic.jpg" />
</div>
Agregar la center-blockclase anula la display:blockinstrucción introducida al usar la img-responsiveclase.
Sin la img-responsiveclase, la imagen se centraría simplemente agregando text-centerclase
Además, debe conocer los conceptos básicos de flexbox y cómo usarlo, ya que Bootstrap4 ahora lo usa de forma nativa .
Aquí hay un excelente video tutorial de ritmo rápido de Brad Schiff
Aquí hay una gran hoja de trucos
Actualizado 2018
En Bootstrap 4 , los métodos de centrado han cambiado.
Centro horizontal en BS4
text-centertodavía se usa para display:inlineelementosmx-autoreemplaza center-blockal centro de display:flexniñosoffset-* o mx-auto puede usarse para centrar columnas de cuadrículamx-auto(márgenes de auto-eje X) se centrarán display:blocko display:flexelementos que tienen una anchura definida , ( %, vw, px, etc ..). Flexbox se usa de manera predeterminada en las columnas de la cuadrícula, por lo que también hay varios métodos de centrado de flexbox.
Demo Bootstrap 4 Centrado horizontal
Para el centrado vertical en BS4, consulte https://stackoverflow.com/a/41464397/171456
Puede escribir directamente en su archivo CSS de esta manera:
.content {
position: absolute;
top: 50%;
left:50%;
transform: translate(-50%,-50%);
}
<div class = "content" >
<p> some text </p>
</div>
yo uso esto
<style>
html, body {
height: 100%;
margin: 0;
padding: 0 0;
}
.container-fluid {
height: 100%;
display: table;
width: 100%;
padding-right: 0;
padding-left: 0;
}
.row-fluid {
height: 100%;
display: table-cell;
vertical-align: middle;
width: 100%;
}
.centering {
float: none;
margin: 0 auto;
}
</style>
<body>
<div class="container-fluid">
<div class="row-fluid">
<div class="offset3 span6 centering">
content here
</div>
</div>
</div>
</body>
para el centrado horizontal puede tener algo como esto:
.centering{
float:none;
margin:0 auto
}
<div class="span8 centering"></div>
<img src="img/logo.png" style="float:none; margin:0 auto" />. Rodear imga los padres divy dar .text-centero dar .pagination-centeredclases a los padres funciona de maravilla.
Me gusta esta solución de una pregunta similar. https://stackoverflow.com/a/25036303/2364401 Use la text-centerclase bootstraps en los datos reales de la tabla <td>y los <th>elementos del encabezado de la tabla . Entonces
<td class="text-center">Cell data</td>
y
<th class="text-center">Header cell data</th>
Con bootstrap 4 puedes usar flex
<div class="d-flex justify-content-center align-items-center">
<button type="submit" class="btn btn-primary">Create</button>
</div>
fuente: bootstrap 4.1
bootstrap 4 + Flex resuelve esto
puedes usar
<div class="d-flex justify-content-center align-items-center">
<button type="submit" class="btn btn-primary">Create</button>
</div>
debe centrarse en el centro horizontal y verticalmente
Descubrí en Bootstrap 4 que puedes hacer esto:
centro horizontal es de hecho text-centerclase
Sin embargo, el centro vertical, usando clases de bootstrap, está agregando ambos mb-auto mt-autopara que el margen superior y el margen inferior estén configurados en automático.
para bootstrap4 centro vertical de pocos artículos
d-flex para reglas flex
columna flexible para dirección vertical en artículos
justify-content-center para centrar
style = 'height: 300px;' debe tener para los puntos de ajuste donde el centro sea calc o use la clase h-100
<div class="d-flex flex-column justify-content-center bg-secondary" style="
height: 300px;
">
<div class="p-2 bg-primary">Flex item</div>
<div class="p-2 bg-primary">Flex item</div>
<div class="p-2 bg-primary">Flex item</div>
</div>