--- title: minmax() slug: Web/CSS/minmax() tags: - CSS - CSS Grid - Diseño - Función CSS - Referencia - Rejilla CSS - Web translation_of: Web/CSS/minmax() ---
La función minmax
()
en CSS define un rango de tamaño mayor o igual que min y menor o igual que max. Se emplea con rejillas CSS.
/* valores <ancho no-flexible>, <ancho de la banda> */ minmax(200px, 1fr) minmax(400px, 50%) minmax(30%, 300px) minmax(100px, max-content) minmax(min-content, 400px) minmax(max-content, auto) minmax(auto, 300px) minmax(min-content, auto) /* valores <ancho fijo>, <ancho de la banda> */ minmax(200px, 1fr) minmax(30%, 300px) minmax(400px, 50%) minmax(50%, min-content) minmax(300px, max-content) minmax(200px, auto) /* valores <ancho no-flexible>, <ancho fijo> */ minmax(400px, 50%) minmax(30%, 300px) minmax(min-content, 200px) minmax(max-content, 200px) minmax(auto, 300px)
Una función que toma dos parámetros, min y max.
Cada parámetro puede ser un valor <length>
, <percentage>
, <flex>
o uno de los valores de las palabras clave max-content
, min-content
o auto
.
Si max < min, entonces max es ignorado y se trata a minmax(min,max)
como min. Como un máximo, un valor {{cssxref("flex_value","<flex>")}} establece el factor flex de una banda; no es válido como un mínimo.
<percentage>
debe ser tratado como auto
. El {{glossary("user agent")}} puede ajustar las contribuciones del tamaño implícito de la banda al tamaño del contenedor de rejilla y así incrementar el tamaño final de la banda y así incrementar el tamaño final en la cantidad mínima que resultase al respetar el porcentaje.fr
especificando el factor flex de la banda. Cada banda de tamaño <flex>
toma una parte del espacio disponible en proporción a su factor flex.max-content
min-content
auto
max-content
. Como un mínimo representa el mayor tamaño mínimo (como se especifica en {{cssxref("min-width")}}/{{cssxref("min-height")}}) de los elementos de rejilla que ocupan la banda.La función minmax()
puede ser usada dentro de:
#container { display: grid; grid-template-columns: minmax(max-content, 300px) minmax(200px, 1fr) 150px; grid-gap: 5px; box-sizing: border-box; height: 200px; width: 100%; background-color: #8cffa0; padding: 10px; } #container > div { background-color: #8ca0ff; padding: 5px; }
<div id="container"> <div> Elemento tan ancho como el contenido,<br/> pero de máximo 300 píxeles. </div> <div> Elemento con un ancho flexible, pero con un mínimo de 200 píxeles. </div> <div> Elemento inflexible de 150 píxeles de ancho. </div> </div>
{{EmbedLiveSample("Example", "100%", 200)}}
Especificación | Estado | Comentario |
---|---|---|
{{SpecName("CSS Grid", "#valdef-grid-template-columns-minmax", "minmax()")}} | {{Spec2("CSS Grid")}} | Definición inicial |
{{Compat("css.properties.grid-template-columns.minmax")}}
Video tutorial: Presentando minmax()