Ver Mensaje Individual
  #1 (permalink)  
Antiguo 09/12/2016, 08:55
quico5
 
Fecha de Ingreso: enero-2008
Mensajes: 581
Antigüedad: 16 años, 11 meses
Puntos: 9
Emular margins laterales con un solo div

Lo que estoy intentando con flex es emular "margin:auto;" pero usando un único DIV y que este ocupe todo el ancho con un color de fondo, y aprecio un margen de error que no consigo dominar

Código HTML:
<!DOCTYPE html>
<html lang="es">
<head>
	<meta charset="UTF-8">
	<title></title>
	<style>
		div.b{
			background:red;
			display:flex;
			justify-content:flex-start;
			align-items:stretch;
		}
		div.b:before{
			background:lime;
			content:"";
			width:calc((100% - 800px) / 2);
		}
		div.b:after{
			background:lime;
			content:"";
			width:calc((100% - 800px) / 2);
		}
	</style>
</head>
<body>
	<div class="b">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Impedit dolor perspiciatis, nemo totam quis voluptatibus. Laudantium quos, nemo quis quo vitae, aperiam delectus tempore velit corporis enim accusamus ipsam consequatur!</div>
	<div style="background:lime;"><div style="width:800px;margin:auto;background:red">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Debitis quia velit, eligendi incidunt nemo dolores quisquam cupiditate qui, facere facilis quae magni assumenda est voluptate autem laudantium sapiente voluptatibus amet.</div></div>
</body>
</html>