search
HomeWeb Front-endCSS TutorialCSS Grid: keywords de dimensionamento

Note: I just translated the text below and posted it here. References are at the end of this article.

Hello. Today I want to talk about some special CSS Grid keywords that are useful for defining the sizing of grid tracks. The ability to use these keywords will allow you to precisely determine the desired grid track sizes. So, let's go.

This article is part of my introduction to CSS Grid series. If you want to check out my previous posts, here you can find the full index.

Introducing sizing keywords

When it comes to CSS Grid, there are only three keywords you can use to determine the size of tracks. These keywords are auto, min-content and max-content. All of them can be used in the CSS properties grid-template-colums and grid-template-rows.

Min-content and max-content

If you want to make the grid track size dependent on its content, you must use one of two keywords: min-content or max-content. Min-content grid track will try to maintain the minimum size without overflowing its content. Max-content grid track, however, assumes that the free space to expand is infinite and assumes the ideal width for your content.

Let me show you some examples showing the difference between the keywords mentioned. Keep in mind that each image contains two containers: the container with a min-content grid column on the left and the container with a max-content grid column on the right.

CSS Grid: keywords de dimensionamento

As you can see here, there is no difference in sizes between the min-content and max-content columns. The reason is that the image has its "default fixed size" which will not change unless you explicitly tell it to change. The content of a text, on the other hand, has the ability to "compress" its size depending on the situation. This compression is done using text wrapping (text wrapping), that is, single words do not wrap. Knowing this, let's replace the image in the example above with some text.

CSS Grid: keywords de dimensionamento

This time, the column widths are different. The min-content column forces its text content to "wrap" while the max-content column expands so much that no text wrapping is necessary. Note that the column min-content has the same width as the longest word and the column max-content is now wider than the container itself.

What will happen when a column contains more than one type of content? Below is an example of columns containing image and text.

CSS Grid: keywords de dimensionamento

In both cases, the widest element determines the size of the column. In the case of min-content, this element is the image or the longest word. In the case of column max-width, this is an image or the entire text. Notice how both content types are separated vertically within the column. I want to discuss this behavior in one of my future articles.

Keyword Auto

The keyword auto is related to the fr unit that I described in the two previous articles. It similarly determines that the grid track must "fill" all the available space on a given axis.

.container {
    /** ... **/
    grid-template-columns: auto auto;
}

CSS Grid: keywords de dimensionamento

However, there are two main differences between the auto keyword and the fr unit. First, the keyword auto is not a unit, so you cannot use it with a numeric value (e.g. 2auto) like you can with fr. Second, the auto keyword always "loses" with the fr unit, when both are used together. See the example below.

.container {
    /** ... **/
    grid-template-columns: auto 1fr;
}

CSS Grid: keywords de dimensionamento

You can expect column auto to "fill" an equal amount of space to column fr in the horizontal dimension. However, the presence of the column fr causes the column to auto "shrink" its size to the size of the content present.

Observe que, no caso de text content, a auto grid track se comporta de forma diferente da min-content/max-content grid track. Quando auto é misturado com fr, a auto-track nunca força o text content a "wrap", a menos que a auto-track "fill" (preencha) todo o espaço disponível.

.container {
    /** ... **/
    width: 200px;
    grid-template-columns: auto 1fr;
}

CSS Grid: keywords de dimensionamento

Obrigado por ler este pequeno artigo. Se quiser ler mais conteúdo como este, siga minha conta dev.to ou twitter. Além disso, sinta-se à vontade para me dar qualquer tipo de feedback. Eu adoraria ler seus comentários. Vejo você em breve no meu próximo artigo!

PS. Se quiser apoiar meu trabalho, ficarei grato por uma xícara de café. Obrigado. ❤️

CSS Grid: keywords de dimensionamento

Fonte

Artigo escrito por Mateusz Kirmuć.

The above is the detailed content of CSS Grid: keywords de dimensionamento. For more information, please follow other related articles on the PHP Chinese website!

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Working With GraphQL CachingWorking With GraphQL CachingMar 19, 2025 am 09:36 AM

If you’ve recently started working with GraphQL, or reviewed its pros and cons, you’ve no doubt heard things like “GraphQL doesn’t support caching” or

Classy and Cool Custom CSS Scrollbars: A ShowcaseClassy and Cool Custom CSS Scrollbars: A ShowcaseMar 10, 2025 am 11:37 AM

In this article we will be diving into the world of scrollbars. I know, it doesn’t sound too glamorous, but trust me, a well-designed page goes hand-in-hand

Making Your First Custom Svelte TransitionMaking Your First Custom Svelte TransitionMar 15, 2025 am 11:08 AM

The Svelte transition API provides a way to animate components when they enter or leave the document, including custom Svelte transitions.

Show, Don't TellShow, Don't TellMar 16, 2025 am 11:49 AM

How much time do you spend designing the content presentation for your websites? When you write a new blog post or create a new page, are you thinking about

Building an Ethereum app using Redwood.js and FaunaBuilding an Ethereum app using Redwood.js and FaunaMar 28, 2025 am 09:18 AM

With the recent climb of Bitcoin’s price over 20k $USD, and to it recently breaking 30k, I thought it’s worth taking a deep dive back into creating Ethereum

What the Heck Are npm Commands?What the Heck Are npm Commands?Mar 15, 2025 am 11:36 AM

npm commands run various tasks for you, either as a one-off or a continuously running process for things like starting a server or compiling code.

Let's use (X, X, X, X) for talking about specificityLet's use (X, X, X, X) for talking about specificityMar 24, 2025 am 10:37 AM

I was just chatting with Eric Meyer the other day and I remembered an Eric Meyer story from my formative years. I wrote a blog post about CSS specificity, and

How do you use CSS to create text effects, such as text shadows and gradients?How do you use CSS to create text effects, such as text shadows and gradients?Mar 14, 2025 am 11:10 AM

The article discusses using CSS for text effects like shadows and gradients, optimizing them for performance, and enhancing user experience. It also lists resources for beginners.(159 characters)

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
3 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
3 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
3 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: How To Unlock Everything In MyRise
3 weeks agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

SublimeText3 Linux new version

SublimeText3 Linux new version

SublimeText3 Linux latest version

PhpStorm Mac version

PhpStorm Mac version

The latest (2018.2.1) professional PHP integrated development tool

Atom editor mac version download

Atom editor mac version download

The most popular open source editor

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Integrate Eclipse with SAP NetWeaver application server.

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment