Wartość auto
jest domyślną wartością właściwości flex-basis
.
Domyślnie element dziecko elementu HTML tworzącego układ elastyczny nie posiada określonego rozmiaru głównego obszaru zawartości.
Rozmiar obszaru zawartości elementu HTML możemy kontrolować za pomocą takich właściwości CSS jak: width, min-width, max-width, height, min-height, max-height.
flex-basis:auto;
Pierwszy element dziecko przykładowego elementu "div#flexbox" nie posiada określonego rozmiaru głównego obszaru zawartości.
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>Darmowy Kurs CSS</title>
<style>
html {
font-size:16px;
font-family:Helvetica, sans-serif;
}
#flexbox {
display:flex;
padding:1em;
font-size:1.3em;
background-color:#7DCDE8;
}
#flexbox > div {
padding:0.5em;
}
#flexbox > :nth-child(1) {
width:200px;
background-color:red;
}
#flexbox > :nth-child(2) {
background-color:orange;
}
#flexbox > :nth-child(3) {
background-color:yellow;
}
</style>
</head>
<body>
<div id="flexbox">
<div>div - 1</div>
<div>div - 2</div>
<div>div - 3</div>
</div>
</body>
</html>
Za pomocą właściwości flex-basis
oraz dowolnej wartości należącej do właściwości width lub należącej do właściwości height (w obu przypadkach z wyłączeniem wartości stretch, min-content, max-content, fit-content) możemy określić rozmiar główny obszaru zawartości interesującego nas elementu dziecka elementu HTML tworzącego układ elastyczny.
flex-basis:150px;
Rozmiar główny (w tym wypadku rozmiar szerokości) obszaru zawartości pierwszego elementu dziecka przykładowego elementu "div#flexbox" wynosi 150 pikseli, ponieważ do wspomnianego pierwszego elementu dziecka przykładowego elementu "div#flexbox" została dodana właściwość "flex-basis" wraz z wartością "150px".
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>Darmowy Kurs CSS</title>
<style>
html {
font-size:16px;
font-family:Helvetica, sans-serif;
}
#flexbox {
display:flex;
padding:1em;
font-size:1.3em;
background-color:#7DCDE8;
}
#flexbox > div {
padding:0.5em;
}
#flexbox > :nth-child(1) {
flex-basis:150px;
width:200px;
background-color:red;
}
#flexbox > :nth-child(2) {
background-color:orange;
}
#flexbox > :nth-child(3) {
background-color:yellow;
}
</style>
</head>
<body>
<div id="flexbox">
<div>div - 1</div>
<div>div - 2</div>
<div>div - 3</div>
</div>
</body>
</html>