¿Cómo puedo alinear dos bloques en línea para que uno quede a la izquierda y el otro a la derecha en la misma línea? ¿Por qué es tan difícil? ¿Hay algo así como LaTeX's \ hfill que pueda consumir el espacio entre ellos para lograr esto?Alinee dos bloques en línea a izquierda y derecha en la misma línea
No quiero usar flotadores porque con bloques en línea puedo alinear las líneas de base. Y cuando la ventana es demasiado pequeña para ambos, con bloques en línea puedo simplemente cambiar el texto, alinearlo al centro y se centrarán uno encima del otro. El posicionamiento relativo (principal) + absoluto (elemento) tiene los mismos problemas que los flotantes.
El HTML5:
<header>
<h1>Title</h1>
<nav>
<a>A Link</a>
<a>Another Link</a>
<a>A Third Link</a>
</nav>
</header>
El css:
header {
//text-align: center; // will set in js when the nav overflows (i think)
}
h1 {
display: inline-block;
margin-top: 0.321em;
}
nav {
display: inline-block;
vertical-align: baseline;
}
Thery're uno al lado del otro, pero quiero que el nav
a la derecha.
AFAIK la única forma de resolver esto es usar flotadores o posicionamiento absoluto. Puede lograr la misma posición de línea de base utilizando margin-top en el navegador. – powerbuoy
Simplemente use margin-top y flotadores. No es posible hacer esto sin eso o con un posicionamiento absoluto. – jdhartley
Use css media queries para cambiar el CSS dependiendo del tamaño de la ventana gráfica. Puedes usar tanto 'position: absolute' como' inline-block' – elclanrs