Section Artikel
Elemen Induk (Kontainer)
Kontainer flex menjadi fleksibel dengan mengatur properti display
menjadi flex:
Berikut ini contoh sintaksisnya :
.flex-container { display: flex; }
Properti kontainer flex adalah:
flex-direction
flex-wrap
flex-flow
justify-content
align-items
align-content
Properti flex-direction
Properti flex-direction
berfungsi untuk menentukan ke arah mana container ingin menumpuk item flex.
Contoh
Nilai kolom menumpuk item fleksibel secara vertikal (dari atas ke bawah):
<!DOCTYPE html> <html> <head> <style> .flex-container { display: flex; flex-direction: column; background-color: DodgerBlue; } .flex-container > div { background-color: #f1f1f1; width: 100px; margin: 10px; text-align: center; line-height: 75px; font-size: 30px; } </style> </head> <body> <h1>The flex-direction Property</h1> <p>The "flex-direction: column;" menumpuk item flex secara vertikal (dari atas ke bawah):</p> <div class="flex-container"> <div>1</div> <div>2</div> <div>3</div> </div> </body> </html>
Contoh
Nilai kolom terbalik menumpuk item fleksibel secara vertikal (tetapi dari bawah ke atas):
<!DOCTYPE html> <html> <head> <style> .flex-container { display: flex; flex-direction: column-reverse; background-color: DodgerBlue; } .flex-container > div { background-color: #f1f1f1; width: 100px; margin: 10px; text-align: center; line-height: 75px; font-size: 30px; } </style> </head> <body> <h1>The flex-direction Property</h1> <p>The "flex-direction: column-reverse;" menumpuk item flex secara vertikal (tapi dari bawah ke atas):</p> <div class="flex-container"> <div>1</div> <div>2</div> <div>3</div> </div> </body> </html>
Contoh
Nilai baris menumpuk item flex secara horizontal (dari kiri ke kanan):
<!DOCTYPE html> <html> <head> <style> .flex-container { display: flex; flex-direction: row; background-color: DodgerBlue; } .flex-container > div { background-color: #f1f1f1; width: 100px; margin: 10px; text-align: center; line-height: 75px; font-size: 30px; } </style> </head> <body> <h1>The flex-direction Property</h1> <p>The "flex-direction: row;" menumpuk item flex secara horizontal (dari kiri ke kanan):</p> <div class="flex-container"> <div>1</div> <div>2</div> <div>3</div> </div> </body> </html>
Contoh
Nilai row-reverse menumpuk item flex secara horizontal (tapi dari kanan ke kiri):
<!DOCTYPE html> <html> <head> <style> .flex-container { display: flex; flex-direction: row-reverse; background-color: DodgerBlue; } .flex-container > div { background-color: #f1f1f1; width: 100px; margin: 10px; text-align: center; line-height: 75px; font-size: 30px; } </style> </head> <body> <h1>The flex-direction Property</h1> <p>The "flex-direction: row-reverse;" menumpuk item flex secara horizontal (tapi dari kanan ke kiri):</p> <div class="flex-container"> <div>1</div> <div>2</div> <div>3</div> </div> </body> </html>
Properti flex-wrap
Properti flex-wrap
berfungsi untuk menentukan apakah item flex harus dibungkus atau tidak.
Contoh
Nilai bungkus menentukan bahwa item flex akan dibungkus jika perlu:
<!DOCTYPE html> <html> <head> <style> .flex-container { display: flex; flex-wrap: wrap; background-color: DodgerBlue; } .flex-container > div { background-color: #f1f1f1; width: 100px; margin: 10px; text-align: center; line-height: 75px; font-size: 30px; } </style> </head> <body> <h1>The flex-wrap Property</h1> <p>The "flex-wrap: wrap;" menentukan bahwa item flex akan dibungkus jika perlu:</p> <div class="flex-container"> <div>1</div> <div>2</div> <div>3</div> <div>4</div> <div>5</div> <div>6</div> <div>7</div> <div>8</div> <div>9</div> <div>10</div> <div>11</div> <div>12</div> </div> <p>Try resizing the browser window.</p> </body> </html>
Contoh
Nilai nowrap menentukan bahwa item flex tidak akan dibungkus (ini default):
<!DOCTYPE html> <html> <head> <style> .flex-container { display: flex; flex-wrap: nowrap; background-color: DodgerBlue; } .flex-container>div { background-color: #f1f1f1; width: 100px; margin: 10px; text-align: center; line-height: 75px; font-size: 30px; } </style> </head> <body> <h1>The flex-wrap Property</h1> <p>The "flex-wrap: nowrap;" menentukan bahwa item flex tidak akan dibungkus (ini default):</p> <div class="flex-container"> <div>1</div> <div>2</div> <div>3</div> <div>4</div> <div>5</div> <div>6</div> <div>7</div> <div>8</div> <div>9</div> <div>10</div> <div>11</div> <div>12</div> </div> <p>Try resizing the browser window.</p> </body> </html>
Contoh
Nilai wrap-reverse menentukan bahwa item fleksibel akan dibungkus jika perlu, dalam urutan terbalik:
<!DOCTYPE html> <html> <head> <style> .flex-container { display: flex; flex-wrap: wrap-reverse; background-color: DodgerBlue; } .flex-container > div { background-color: #f1f1f1; width: 100px; margin: 10px; text-align: center; line-height: 75px; font-size: 30px; } </style> </head> <body> <h1>The flex-wrap Property</h1> <p>The "flex-wrap: wrap-reverse;" menentukan bahwa item flex akan dibungkus jika perlu, dalam urutan yang terbalik:</p> <div class="flex-container"> <div>1</div> <div>2</div> <div>3</div> <div>4</div> <div>5</div> <div>6</div> <div>7</div> <div>8</div> <div>9</div> <div>10</div> <div>11</div> <div>12</div> </div> <p>Try resizing the browser window.</p> </body> </html>
Properti flex-flow
Properti flex-flow
adalah properti singkatan untuk menyetel properti flex-direction
dan flex-wrap
.
Contoh :
<!DOCTYPE html> <html> <head> <style> .flex-container { display: flex; flex-flow: row wrap; background-color: DodgerBlue; } .flex-container > div { background-color: #f1f1f1; width: 100px; margin: 10px; text-align: center; line-height: 75px; font-size: 30px; } </style> </head> <body> <h1>The flex-flow Property</h1> <p>Properti flex-flow adalah properti singkatan untuk flex-direction dan properti flex-wrap.</p> <div class="flex-container"> <div>1</div> <div>2</div> <div>3</div> <div>4</div> <div>5</div> <div>6</div> <div>7</div> <div>8</div> <div>9</div> <div>10</div> <div>11</div> <div>12</div> </div> <p>Try resizing the browser window.</p> </body> </html>
Properti konten justify
Properti justify-content
digunakan untuk menyelaraskan item flex:
Contoh
Nilai tengah menyelaraskan item flex di tengah wadah:
<!DOCTYPE html> <html> <head> <style> .flex-container { display: flex; justify-content: center; background-color: DodgerBlue; } .flex-container > div { background-color: #f1f1f1; width: 100px; margin: 10px; text-align: center; line-height: 75px; font-size: 30px; } </style> </head> <body> <h1>The justify-content Property</h1> <p>The "justify-content: center;" menyelaraskan item flex di tengah kontainer:</p> <div class="flex-container"> <div>1</div> <div>2</div> <div>3</div> </div> </body> </html>
Contoh
Nilai flex-start menyelaraskan item flex di awal penampung (ini default):
<!DOCTYPE html> <html> <head> <style> .flex-container { display: flex; justify-content: flex-start; background-color: DodgerBlue; } .flex-container > div { background-color: #f1f1f1; width: 100px; margin: 10px; text-align: center; line-height: 75px; font-size: 30px; } </style> </head> <body> <h1>The justify-content Property</h1> <p>The "justify-content: flex-start;" menyelaraskan item flex di awal kontainer (ini default):</p> <div class="flex-container"> <div>1</div> <div>2</div> <div>3</div> </div> </body> </html>
Contoh
Nilai flex-end menyelaraskan item flex di akhir kontainer:
<!DOCTYPE html> <html> <head> <style> .flex-container { display: flex; justify-content: flex-end; background-color: DodgerBlue; } .flex-container > div { background-color: #f1f1f1; width: 100px; margin: 10px; text-align: center; line-height: 75px; font-size: 30px; } </style> </head> <body> <h1>The justify-content Property</h1> <p>The "justify-content: flex-end;" menyelaraskan item flex di akhir kontainer:</p> <div class="flex-container"> <div>1</div> <div>2</div> <div>3</div> </div> </body> </html>
Contoh
Nilai spasi-sekitar menampilkan item fleksibel dengan spasi sebelum, di antara, dan setelah garis:
<!DOCTYPE html> <html> <head> <style> .flex-container { display: flex; justify-content: space-around; background-color: DodgerBlue; } .flex-container > div { background-color: #f1f1f1; width: 100px; margin: 10px; text-align: center; line-height: 75px; font-size: 30px; } </style> </head> <body> <h1>The justify-content Property</h1> <p>The "justify-content: space-around;" menampilkan item flex dengan spasi sebelum, di antara, dan setelah garis:</p> <div class="flex-container"> <div>1</div> <div>2</div> <div>3</div> </div> </body> </html>
Contoh
Nilai spasi-antara menampilkan item fleksibel dengan spasi antar baris:
<!DOCTYPE html> <html> <head> <style> .flex-container { display: flex; justify-content: space-between; background-color: DodgerBlue; } .flex-container > div { background-color: #f1f1f1; width: 100px; margin: 10px; text-align: center; line-height: 75px; font-size: 30px; } </style> </head> <body> <h1>The justify-content Property</h1> <p>The "justify-content: space-between;" menampilkan item flex dengan spasi antar baris:</p> <div class="flex-container"> <div>1</div> <div>2</div> <div>3</div> </div> </body> </html>
Properti align-item
Properti align-items
digunakan untuk menyelaraskan item flex.
Contoh
Nilai tengah menyelaraskan item flex di tengah wadah:
<!DOCTYPE html> <html> <head> <style> .flex-container { display: flex; height: 200px; align-items: center; background-color: DodgerBlue; } .flex-container > div { background-color: #f1f1f1; width: 100px; margin: 10px; text-align: center; line-height: 75px; font-size: 30px; } </style> </head> <body> <h1>The align-items Property</h1> <p>The "align-items: center;" menyelaraskan item flex di tengah kontainer:</p> <div class="flex-container"> <div>1</div> <div>2</div> <div>3</div> </div> </body> </html>
Contoh
Nilai flex-start menyelaraskan item flex di bagian atas container:
<!DOCTYPE html> <html> <head> <style> .flex-container { display: flex; height: 200px; align-items: flex-start; background-color: DodgerBlue; } .flex-container > div { background-color: #f1f1f1; width: 100px; margin: 10px; text-align: center; line-height: 75px; font-size: 30px; } </style> </head> <body> <h1>The align-items Property</h1> <p>The "align-items: flex-start;" menyelaraskan item flex di bagian atas kontainer:</p> <div class="flex-container"> <div>1</div> <div>2</div> <div>3</div> </div> </body> </html>
Contoh
Nilai flex-end menyelaraskan item flex di bagian bawah container:
<!DOCTYPE html> <html> <head> <style> .flex-container { display: flex; height: 200px; align-items: flex-end; background-color: DodgerBlue; } .flex-container > div { background-color: #f1f1f1; width: 100px; margin: 10px; text-align: center; line-height: 75px; font-size: 30px; } </style> </head> <body> <h1>The align-items Property</h1> <p>The "align-items: flex-end;" menyelaraskan item flex di bagian bawah kontainer:</p> <div class="flex-container"> <div>1</div> <div>2</div> <div>3</div> </div> </body> </html>
Contoh
Nilai peregangan meregangkan item flex untuk mengisi wadah (ini default):
<!DOCTYPE html> <html> <head> <style> .flex-container { display: flex; height: 200px; align-items: stretch; background-color: DodgerBlue; } .flex-container > div { background-color: #f1f1f1; width: 100px; margin: 10px; text-align: center; line-height: 75px; font-size: 30px; } </style> </head> <body> <h1>The align-items Property</h1> <p>The "align-items: stretch;" meregangkan item flex untuk mengisi kontainer (ini default):</p> <div class="flex-container"> <div>1</div> <div>2</div> <div>3</div> </div> </body> </html>
Contoh
Nilai garis dasar menyelaraskan item fleksibel seperti garis dasar mereka:
<!DOCTYPE html> <html> <head> <style> .flex-container { display: flex; height: 200px; align-items: baseline; background-color: DodgerBlue; } .flex-container > div { background-color: #f1f1f1; width: 100px; margin: 10px; text-align: center; line-height: 75px; font-size: 30px; } </style> </head> <body> <h1>The align-items Property</h1> <p>The "align-items: baseline;" menyelaraskan item flex seperti garis dasarnya:</p> <div class="flex-container"> <div><h1>1</h1></div> <div><h6>2</h6></div> <div><h3>3</h3></div> <div><small>4</small></div> </div> </body> </html>
Catatan: contoh ini menggunakan ukuran font yang berbeda untuk menunjukkan bahwa item disejajarkan dengan garis dasar teks:
Properti align-content
Properti align-content
digunakan untuk meratakan garis fleksibel.
Contoh
Nilai spasi antar menampilkan garis fleksibel dengan spasi yang sama di antara mereka:
<!DOCTYPE html> <html> <head> <style> .flex-container { display: flex; height: 600px; flex-wrap: wrap; align-content: space-between; background-color: DodgerBlue; } .flex-container > div { background-color: #f1f1f1; width: 100px; margin: 10px; text-align: center; line-height: 75px; font-size: 30px; } </style> </head> <body> <h1>The align-content Property</h1> <p>The "align-content: space-between;" menampilkan garis fleksibel dengan jarak yang sama di antara mereka:</p> <div class="flex-container"> <div>1</div> <div>2</div> <div>3</div> <div>4</div> <div>5</div> <div>6</div> <div>7</div> <div>8</div> <div>9</div> <div>10</div> <div>11</div> <div>12</div> </div> </body> </html>
Contoh
Nilai spasi-sekitar menampilkan garis fleksibel dengan spasi sebelum, di antara, dan setelahnya:
<!DOCTYPE html> <html> <head> <style> .flex-container { display: flex; height: 600px; flex-wrap: wrap; align-content: space-around; background-color: DodgerBlue; } .flex-container > div { background-color: #f1f1f1; width: 100px; margin: 10px; text-align: center; line-height: 75px; font-size: 30px; } </style> </head> <body> <h1>The align-content Property</h1> <p>The "align-content: space-around;" menampilkan garis fleksibel dengan spasi sebelum, di antara, dan setelahnya:</p> <div class="flex-container"> <div>1</div> <div>2</div> <div>3</div> <div>4</div> <div>5</div> <div>6</div> <div>7</div> <div>8</div> <div>9</div> <div>10</div> <div>11</div> <div>12</div> </div> </body> </html>
Contoh
Nilai peregangan meregangkan garis fleksibel untuk mengambil ruang yang tersisa (ini default):
<!DOCTYPE html> <html> <head> <style> .flex-container { display: flex; height: 600px; flex-wrap: wrap; align-content: stretch; background-color: DodgerBlue; } .flex-container > div { background-color: #f1f1f1; width: 100px; margin: 10px; text-align: center; line-height: 75px; font-size: 30px; } </style> </head> <body> <h1>The align-content Property</h1> <p>The "align-content: stretch;" meregangkan garis fleksibel untuk mengambil ruang yang tersisa (ini default):</p> <div class="flex-container"> <div>1</div> <div>2</div> <div>3</div> <div>4</div> <div>5</div> <div>6</div> <div>7</div> <div>8</div> <div>9</div> <div>10</div> <div>11</div> <div>12</div> </div> </body> </html>
Contoh
Tampilan nilai tengah menampilkan garis fleksibel di tengah wadah:
<!DOCTYPE html> <html> <head> <style> .flex-container { display: flex; height: 600px; flex-wrap: wrap; align-content: center; background-color: DodgerBlue; } .flex-container > div { background-color: #f1f1f1; width: 100px; margin: 10px; text-align: center; line-height: 75px; font-size: 30px; } </style> </head> <body> <h1>The align-content Property</h1> <p>The "align-content: center;" menampilkan garis fleksibel di tengah kontainer:</p> <div class="flex-container"> <div>1</div> <div>2</div> <div>3</div> <div>4</div> <div>5</div> <div>6</div> <div>7</div> <div>8</div> <div>9</div> <div>10</div> <div>11</div> <div>12</div> </div> </body> </html>
Contoh
Nilai flex-start menampilkan garis-garis fleksibel di awal penampung:
<!DOCTYPE html> <html> <head> <style> .flex-container { display: flex; height: 600px; flex-wrap: wrap; align-content: flex-start; background-color: DodgerBlue; } .flex-container > div { background-color: #f1f1f1; width: 100px; margin: 10px; text-align: center; line-height: 75px; font-size: 30px; } </style> </head> <body> <h1>The align-content Property</h1> <p>The "align-content: flex-start;" menampilkan garis fleksibel di awal kontainer:</p> <div class="flex-container"> <div>1</div> <div>2</div> <div>3</div> <div>4</div> <div>5</div> <div>6</div> <div>7</div> <div>8</div> <div>9</div> <div>10</div> <div>11</div> <div>12</div> </div> </body> </html>
Contoh
Nilai flex-end menampilkan garis flex di akhir penampung:
<!DOCTYPE html> <html> <head> <style> .flex-container { display: flex; height: 600px; flex-wrap: wrap; align-content: flex-end; background-color: DodgerBlue; } .flex-container > div { background-color: #f1f1f1; width: 100px; margin: 10px; text-align: center; line-height: 75px; font-size: 30px; } </style> </head> <body> <h1>The align-content Property</h1> <p>The "align-content: flex-end;" menampilkan garis fleksibel di ujung kontainer:</p> <div class="flex-container"> <div>1</div> <div>2</div> <div>3</div> <div>4</div> <div>5</div> <div>6</div> <div>7</div> <div>8</div> <div>9</div> <div>10</div> <div>11</div> <div>12</div> </div> </body> </html>
Perfect Centering
Dalam contoh berikut, kita akan menyelesaikan masalah gaya yang sangat umum: perfect centering.
Contoh :
<!DOCTYPE html> <html> <head> <style> .flex-container { display: flex; justify-content: center; align-items: center; height: 300px; background-color: DodgerBlue; } .flex-container>div { background-color: #f1f1f1; color: white; width: 100px; height: 100px; } </style> </head> <body> <h1>Perfect Centering</h1> <p>A container with both the justify-content and the align-items properties set to <em>center</em> will align the item(s) in the center (in both axis).</p> <div class="flex-container"> <div></div> </div> </body> </html>
SOLUSI: Setel properti justify-content
dan align-items
ke tengah dan item flex akan berada di tengah dengan sempurna: