Scusate se il titolo è confuso. Fondamentalmente, sto lavorando su un tema tumblr in cui ho bisogno di tre div adiacenti avvolti in un contenitore a larghezza fissa. Nessuno dei loro contenuti è fisso, quindi hanno tutti una larghezza variabile. Il div medio dovrebbe sempre essere centrato sul contenitore, mentre i div a sinistra e a destra saranno sempre "toccando" il div medio, e, quindi, spostati mentre la larghezza del div centrale cambia (le immagini di sinistra e di destra possono essere , quindi l'allineamento del testo non funziona sempre). Inoltre, potrebbe anche essere necessario nascondere la sinistra, la destra o entrambe le immersioni sinistra e destra.Centrare il centro di tre div e posizionare gli altri due rispetto a quello centrale
Ecco un'immagine concettuale:
posso ottenere questo utilizzando flexboxes facilmente (JFiddle), ma flex only has 86% global support.
Questo è il più vicino ho potuto ottenere senza usare flexboxes, ma non riesco a ottenere che div centrale (con testo) centrato al titolo div, pur conservando le posizioni relative delle due immagini su entrambi i lati: JFiddle
* {
height: 100%;
position: relative;
}
body {
height: 200px;
}
/* just to get rid of scrollbar */
p {
margin: 0;
}
.title {
background: #aaa;
height: 22px;
width: 450px;
/* for example */
margin: 0 auto;
}
.container {
background: #abc;
float: left;
}
.lr {
transform: translate(0, -100%);
}
.left {
background: green;
float: left;
}
.left img {
transform: translate(-100%);
}
.center {
background: red;
display: inline-block;
z-index: 2;
}
.right {
background: blue;
float: right;
}
.right img {
transform: translate(100%);
}
.left img, .right img {
height: 100%;
}
<div class="title">
<div class="container">
<div class="center">CENTERCENTERCENTERCEN</div>
<div class="lr">
<div class="left">
<img src="http://i.imgur.com/7bvErJN.jpg" />
</div>
<div class="right">
<img src="http://i.imgur.com/q8Mq0YZ.jpg" />
</div>
</div>
</div>
</div>
altri hanno scritto cercando di visualizzare il titolo come un tavolo, ma che richiederebbe centrare la cellula centrale per tutta la fila, e avendo le celle a sinistra ea destra prendere il resto dello spazio, e Non sono sicuro che tu possa farlo quando le loro larghezze non sono corrette.
Qualcuno sa di altre soluzioni?
@Danko Ciò non centrare il testo nel div mezzo. Ho il div centrale avvolto in termoretraibile in modo che le due immagini su entrambi i lati siano rivolte contro il testo, e ora sto cercando di centrare il div medio mantenendo le posizioni delle due immagini relative a quel div intermedio (senza usare Javascript o flex). – velocirabbit
Sì, errore mio se puoi modificare un po 'il tuo markup puoi farlo http://jsfiddle.net/ytye51zg/32/ – DaniP
@Danko Woah, che funziona perfettamente! Ho provato aggiungendo altro a sinistra e centrando il tutto e non si rompe: http://jsfiddle.net/velocirabbit/ytye51zg/33/ Funziona anche se rimuovi il testo al centro. – velocirabbit