Necesito que algunos divs se coloquen en el centro y se ajusten al ancho de su contenido al mismo tiempo.
Ahora lo estoy haciendo así:
.mydiv-centerer{
text-align: center;
.mydiv {
background: none no-repeat scroll 0 0 rgba(1, 56, 110, 0.7);
border-radius: 10px 10px 10px 10px;
box-shadow: 0 0 5px #0099FF;
color: white;
margin: 10px auto;
padding: 10px;
text-align: justify;
width: -moz-fit-content;
}
}
Ahora, el último comando "ancho: -moz-fit-content;" es exactamente lo que necesito!
El único problema es ... funciona solo en Firefox.
También intenté con "display: inline-block;" , pero necesito que estos divs se comporten como divs. Es decir, cada div siguiente debe estar debajo y no en línea con el anterior.
¿Conoce alguna posible solución para varios navegadores?
firefox
css
cross-browser
DuArme
fuente
fuente
fit-content
ahora.Respuestas:
Por fin lo arreglé simplemente usando:
display: table;
fuente
display: table
ymargin: auto
para centrar aform
. ¡Excelente! : Dmax-width: 100%
. Ej .MDN de Mozilla sugiere algo como lo siguiente [ fuente ]:
p { width: intrinsic; /* Safari/WebKit uses a non-standard name */ width: -moz-max-content; /* Firefox/Gecko */ width: -webkit-max-content; /* Chrome */ }
fuente
-moz-max-content
solo es equivalente a-moz-fit-content
mientras que el elemento padre es más ancho.-moz-fit-content
se ajustará al contenido y ajustará el texto, pero-moz-max-content
se extenderá fuera del elemento principal. Lo mismo se aplica a Chrome-webkit-max-content
yfit-content
.width: max-content;
.En un caso similar usé:
white-space: nowrap;
fuente
¿Existe una única declaración que solucione esto para Webkit, Gecko y Blink? No. Sin embargo, existe una solución para varios navegadores que especifica varios valores de propiedad de ancho que corresponden a la convención de cada motor de diseño.
.mydiv { ... width: intrinsic; /* Safari/WebKit uses a non-standard name */ width: -moz-max-content; /* Firefox/Gecko */ width: -webkit-max-content; /* Chrome */ ... }
Adaptado de: MDN
fuente
Yo uso estos:
.right {display:table; margin:-18px 0 0 auto;} .center {display:table; margin:-18px auto 0 auto;}
fuente
width: intrinsic; /* Safari/WebKit uses a non-standard name */ width: -moz-max-content; /* Firefox/Gecko */ width: -webkit-max-content; /* Chrome */
fuente
¿Por qué no usar algunos
br
s?<div class="mydiv-centerer"> <div class="mydiv">Some content</div><br /> <div class="mydiv">More content than before</div><br /> <div class="mydiv">Here is a lot of content that I was not anticipating</div> </div>
CSS
.mydiv-centerer{ text-align: center; } .mydiv{ background: none no-repeat scroll 0 0 rgba(1, 56, 110, 0.7); border-radius: 10px 10px 10px 10px; box-shadow: 0 0 5px #0099FF; color: white; margin: 10px auto; padding: 10px; text-align: justify; display:inline-block; }
Ejemplo: http://jsfiddle.net/YZV25/
fuente
display: table;
lugar dedisplay: inline-block;
.