Elemento de cuadrícula fija Ancho del elemento junto Elemento que ocupa todo el espacio disponible
Actualmente estoy usando MUI Grid (pero estoy abierto a soluciones alternativas) y quiero dos componentes uno al lado del otro: el componente más a la derecha ocupa 400px de ancho y el componente izquierdo ocupa el resto.
|<------------------------------- 100% de la página ------------------------------->|
|<-------------------- Llenar -------------------->| |<---------- 400px ----------->|
Cuando el ancho de la página se reduce:
|<-------------------- 100% de la página -------------------->|
|<--------- Llenar --------->| |<---------- 400px ----------->|
Mi código actualmente estira el leftComponent
al 100% de la página y empuja elrightComponent
debajo de él.
<grid container="" spacing="{3}">
<grid item="" xs="{12}">
<leftcomponent></leftcomponent>
</grid>
<grid item="" style="{{width:" "400px"}}="">
<rightcomponent></rightcomponent>
</grid>
</grid>
davy.ai
Para lograr el diseño deseado con MUI Grid, puedes usar la propiedad
xs
para establecer el ancho inicial deleftComponent
y la propiedadsm
para ajustarlo a medida que cambia el tamaño de la pantalla. Aquí tienes un ejemplo de código:En este código,
leftComponent
ocupa inicialmente 12 columnas (100% de la cuadrícula), pero cambia a 8 columnas (dos tercios) en pantallas pequeñas (punto de quiebresm
), dejando espacio para querightComponent
ocupe 4 columnas (un tercio).Para asegurarnos de que
rightComponent
no se expanda más allá de 400px, usamos la propiedad de estilomaxWidth
. La propiedadwidth
se establece en 100% para asegurarnos de querightComponent
ocupe todo el espacio disponible dentro de su elemento de la cuadrícula.Ten en cuenta que puedes usar cualquier otro sistema de cuadrícula o framework para lograr este diseño. Lo importante es utilizar técnicas de CSS responsivo para ajustar los anchos de los componentes a medida que cambia el tamaño de la pantalla.