Estoy haciendo una maquetación con un header, tres columnas y footer. En cuanto a las tres columnas deben de quedar la izquierda pegada justo a la izquierda a 0px, la derecha justo a la derecha 0px y la del medio justo en el centro y a la vez serán responsive.
Hasta ahora he probado varias formas, por ejemplo así:
Código HTML:
Ver original
<div id="pagewrap"> <header> </header> <div id="centrado"> <!-- Prueba de centrado --> <section id="content"> </section> <section id="middle"> <p>Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi.</p> </section> <aside id="sidebar"> </aside> </div> <!-- /Prueba de centrado --> <footer> </footer> </div>
Y este es el css que uso:
Código CSS:
Ver original
*{margin: 0; padding: 0; border: 0;} html, body{height:100%;} body { font-family: 'Open Sans', sans-serif; color: white; } /* STRUCTURE */ #pagewrap { background: yellow; margin: 0 auto; text-align: center;/*Aquí centro las columnas y si solo pongo la central queda al centro.*/ width: 100%; } header { background: black; height: 100px; } #content { background: blue; display:inline-block; left: 0; position: absolute; vertical-align:top; width: 20%; } #middle { background: green; display: inline-block; margin:0 auto; text-align: left; vertical-align:top; width:46%; } #sidebar { background:pink; display:inline-block; position: absolute; right: 0; vertical-align:top; width: 20%; } footer { padding: 0 15px; background: brown; }
Hasta ahi parece que funciona, la columna izquierda se situa pegada a 0, la derecha pegada a la derecha total en 0 y la del centro al centro pero por ejemplo veo que el contenido total del alto de la derecha al bajar pasa por encima del footer y no lo desplaza. ¿Como podría solucionarlo?
¿Hay alguna otra manera mejor de hacerlo? Por ahora me gustarïa hacerlo por porcentajes para hacerlo lo mäs flexible posible sin usar float y solo usando display:inline-block; tampoco flex-box o grids pero si las otras alternativas ya son mas viables hoy día soy todo oido a cualquier otra opción nueva de hoy día.
Saludos.