Kotak Flex CSS3 (Kotak Flex)

Reka letak ialah bahagian yang sangat penting dalam reka bentuk gaya aplikasi web. Reka letak digunakan untuk menentukan saiz dan kedudukan komponen dan elemen yang berbeza pada halaman. Dengan populariti antara muka pengguna yang responsif, aplikasi web secara amnya diperlukan untuk menyesuaikan diri dengan saiz peranti dan resolusi penyemak imbas yang berbeza. Aspek yang paling penting dalam reka bentuk antara muka pengguna responsif ialah reka letak. Susun atur perlu dilaraskan mengikut saiz tetingkap, dengan itu mengubah saiz dan kedudukan komponen untuk mencapai kesan paparan terbaik. Ini juga menjadikan logik susun atur lebih kompleks.

Artikel ini memperkenalkan model reka letak baharu yang diperkenalkan dalam spesifikasi CSS3: model kotak fleksibel. Model flexbox boleh memenuhi banyak keperluan susun atur kompleks biasa dengan cara yang mudah. Kelebihannya ialah pembangun hanya mengisytiharkan tingkah laku yang sepatutnya ada pada susun atur, tanpa memberikan kaedah pelaksanaan khusus. Penyemak imbas bertanggungjawab untuk melakukan susun atur sebenar. Model reka letak ini disokong dalam pelayar utama.


Kandungan Kotak Fleksibel CSS3

Fleksibel Kotak itu terdiri daripada bekas Flex dan item Flex.

Bekas fleksibel ditakrifkan sebagai bekas fleksibel dengan menetapkan nilai sifat paparan kepada flex atau inline-flex.

Bekas fleksibel mengandungi satu atau lebih elemen anak fleksibel.

Nota: Bahagian luar bekas fleksibel dan dalam subelemen fleksibel ditunjukkan secara normal. Kotak lentur hanya mentakrifkan cara elemen anak lentur dibentangkan dalam bekas lentur.

Elemen kanak-kanak fleksibel biasanya dipaparkan dalam satu baris dalam kotak fleksibel. Secara lalai hanya terdapat satu baris setiap bekas.

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title>php.cn</title> 
<style> 
.flex-container {
    display: -webkit-flex;
    display: flex;
    width: 400px;
    height: 150px;
    background-color: yellow;
}
.flex-item {
    background-color: cornflowerblue;
    width: 100px;
    height: 100px;
    margin: 10px;
}
</style>
</head>
<body>
<div class="flex-container">
  <div class="flex-item"> 1</div>
  <div class="flex-item"> 2</div>
  <div class="flex-item"> 3</div>  
</div>
</body>
</html>


sifat arah lentur

Menetapkan atau mendapatkan semula elemen anak lentur objek kotak Kedudukan dalam bekas induk.

Sintaks

arah lentur: baris | lajur-balik | 🎜>

baris: disusun secara mendatar dari kiri ke kanan (dijajar ke kiri), kaedah susunan lalai.

baris-terbalik: Terbalikkan susunan mendatar (dijajar kanan, dari belakang ke hadapan, dengan item terakhir di hadapan.

lajur: Susunan menegak.

baris-terbalik: terbalikkan susunan menegak, dari belakang ke hadapan, dengan item terakhir di atas

Pelayar menyokong
< Firefox, Opera dan Chrome menyokong atribut flex-direction

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title>php.cn</title> 
<style>
.box{
display:-webkit-flex;
display:flex;
margin:0;padding:10px;list-style:none;background-color:#eee;}
.box li{width:100px;height:100px;border:1px solid #aaa;text-align:center;}
#box{
-webkit-flex-direction:row;
flex-direction:row;
}
#box2{
-webkit-flex-direction:row-reverse;
flex-direction:row-reverse;
}
#box3{
height:500px;
-webkit-flex-direction:column;
flex-direction:column;
}
#box4{
height:500px;
-webkit-flex-direction:column-reverse;
flex-direction:column-reverse;
}
</style>
</head>
<body>
    <h2>flex-direction:row</h2>
    <ul id="box" class="box">
    <li>a</li>
    <li>b</li>
    <li>c</li>
    </ul>
    <h2>flex-direction:row-reverse</h2>
    <ul id="box2" class="box">
    <li>a</li>
    <li>b</li>
    <li>c</li>
    </ul>
    <h2>flex-direction:column</h2>
    <ul id="box3" class="box">
    <li>a</li>
    <li>b</li>
    <li>c</li>
    </ul>
    <h2>flex-direction:column-reverse</h2>
    <ul id="box4" class="box">
    <li>a</li>
    <li>b</li>
    <li>c</li>
    </ul>
</body>
</html>


justify-content atribut menetapkan atau mendapatkan semula penjajaran elemen kotak fleksibel dalam arah paksi utama (paksi mendatar) Sifat ini juga mengawal penjajaran apabila elemen melimpah baris.

Sintaks

kandungan justify: flex-start | tengah-ruang-antara


flex-start: Elemen kotak flex akan dijajarkan dengan permulaan baris. Tepi permulaan utama anak pertama baris akan diselaraskan dengan tepi permulaan utama baris dan semua item flex seterusnya akan diselaraskan dengan item sebelumnya.

flex-end: Elemen kotak flex akan dijajarkan ke hujung baris. Tepi hujung utama elemen anak pertama baris akan diselaraskan dengan tepi hujung utama baris dan semua item flex seterusnya akan diselaraskan dengan item sebelumnya.

tengah: Elemen kotak fleksibel akan dijajarkan ke tengah baris. Elemen anak baris akan dijajarkan antara satu sama lain dan berpusat di dalam baris, dengan elemen pertama mempunyai sebanyak jidar dari kedudukan permulaan utama baris seperti yang dimiliki oleh elemen terakhir dari kedudukan akhir utama baris (jika ruang yang tinggal adalah negatif , maka limpahan panjang yang sama pada kedua-dua hujung dikekalkan).

ruang-antara: Elemen Flexbox akan diagihkan sama rata dalam baris. Jika ruang yang tinggal paling kiri negatif, atau baris hanya mempunyai satu anak, nilai ini bersamaan dengan 'flex-start'. Dalam kes lain, jidar elemen pertama diselaraskan dengan jidar permulaan utama garisan, manakala jidar elemen terakhir diselaraskan dengan jidar hujung utama garisan, dan item flex yang selebihnya diagihkan sama rata, dan Pastikan terdapat ruang putih yang sama antara dua.

ruang-sekitar: Elemen kotak fleksibel akan diagihkan sama rata dalam baris, meninggalkan separuh daripada ruang antara sub-elemen di kedua-dua hujungnya. Jika ruang paling kiri yang tinggal adalah negatif, atau terdapat hanya satu item flexbox dalam baris, nilai ini bersamaan dengan 'tengah'. Dalam kes lain, item kotak flex dijarakkan sama rata, dengan ruang putih yang sama di antara mereka, dengan separuh ruang sebelum elemen pertama dan separuh ruang selepas elemen terakhir.

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title>php.cn</title> 
<style>
.box{
display:-webkit-flex;
display:flex;
width:400px;height:100px;margin:0;padding:0;border-radius:5px;list-style:none;background-color:#eee;}
.box li{margin:5px;padding:10px;border-radius:5px;background:#aaa;text-align:center;}
#box{
-webkit-justify-content:flex-start;
justify-content:flex-start;
}
#box2{
-webkit-justify-content:flex-end;
justify-content:flex-end;
}
#box3{
-webkit-justify-content:center;
justify-content:center;
}
#box4{
-webkit-justify-content:space-between;
justify-content:space-between;
}
#box5{
-webkit-justify-content:space-around;
justify-content:space-around;
}
</style>
</head>
<body>
<ul id="box" class="box">
<li>a</li>
<li>b</li>
<li>c</li>
</ul>
<h2>justify-content:flex-end</h2>
<ul id="box2" class="box">
<li>a</li>
<li>b</li>
<li>c</li>
</ul>
<h2>justify-content:center</h2>
<ul id="box3" class="box">
<li>a</li>
<li>b</li>
<li>c</li>
</ul>
<h2>justify-content:space-between</h2>
<ul id="box4" class="box">
<li>a</li>
<li>b</li>
<li>c</li>
</ul>
<h2>justify-content:space-around</h2>
<ul id="box5" class="box">
<li>a</li>
<li>b</li>
<li>c</li>
</ul>
</body>
</html>


harta benda jajarkan

Tetapkan atau dapatkan semula elemen flexbox pada salib paksi Penjajaran dalam arah (paksi menegak).

Sintaks

item sejajar: flex-start | regangan


flex-start: Sempadan kedudukan permulaan paksi silang (paksi menegak) elemen kotak lentur adalah berhampiran dengan sempadan permulaan paksi silang bagi barisan itu.

hujung lentur: Sempadan kedudukan permulaan paksi silang (paksi menegak) elemen kotak lentur adalah berhampiran dengan sempadan hujung paksi silang baris.

pusat: Elemen flexbox berpusat pada paksi silang (paksi menegak) baris. (Jika saiz baris lebih kecil daripada saiz elemen flexbox, ia akan melimpah panjang yang sama dalam kedua-dua arah).

garis dasar: Jika paksi sebaris dan paksi silang bagi elemen kotak fleksibel adalah sama, nilai ini bersamaan dengan 'fleks-mula'. Jika tidak, nilai ini akan mengambil bahagian dalam penjajaran garis dasar.

regangan: Jika nilai atribut yang menyatakan saiz paksi silang ialah 'auto', nilainya akan menjadikan saiz kotak margin item sehampir mungkin dengan saiz baris, tetapi pada masa yang sama ia akan mematuhi dengan 'min/max-width/height' 'Sekatan atribut.

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title>php.cn</title> 
<style>
.box{
display:-webkit-flex;
display:flex;
width:200px;height:100px;margin:0;padding:0;border-radius:5px;list-style:none;background-color:#eee;}
.box li{margin:5px;border-radius:5px;background:#aaa;text-align:center;}
.box li:nth-child(1){padding:10px;}
.box li:nth-child(2){padding:15px 10px;}
.box li:nth-child(3){padding:20px 10px;}
#box{
-webkit-align-items:flex-start;
align-items:flex-start;
}
#box2{
-webkit-align-items:flex-end;
align-items:flex-end;
}
#box3{
-webkit-align-items:center;
align-items:center;
}
#box4{
-webkit-align-items:baseline;
align-items:baseline;
}
#box5{
-webkit-align-items:strecth;
align-items:strecth;
}
</style>
</head>
<body>
<h2>align-items:flex-start</h2>
<ul id="box" class="box">
<li>a</li>
<li>b</li>
<li>c</li>
</ul>
<h2>align-items:flex-end</h2>
<ul id="box2" class="box">
<li>a</li>
<li>b</li>
<li>c</li>
</ul>
<h2>align-items:center</h2>
<ul id="box3" class="box">
<li>a</li>
<li>b</li>
<li>c</li>
</ul>
<h2>align-items:baseline</h2>
<ul id="box4" class="box">
<li>a</li>
<li>b</li>
<li>c</li>
</ul>
<h2>align-items:strecth</h2>
<ul id="box5" class="box">
<li>a</li>
<li>b</li>
<li>c</li>
</ul>
</body>
</html>


harta flex-wrap

Menetapkan atau mendapatkan semula elemen anak flex objek kotak Sama ada hendak membalut apabila melebihi bekas induk.

Sintaksis

balut lentur: nowrap-balikkan


nowrap: Jangan balut apabila elemen anak melimpahi bekas induk.

balut: Balut secara automatik apabila elemen anak melimpahi bekas induk.

balut-terbalik: Terbalikkan susunan pembalut.

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title>php.cn</title> 
<style>
.box{
display:-webkit-flex;
display:flex;
width:220px;margin:0;padding:10px;list-style:none;background-color:#eee;}
.box li{width:100px;height:100px;border:1px solid #aaa;text-align:center;}
#box{
-webkit-flex-wrap:nowrap;
flex-wrap:nowrap;
}
#box2{
-webkit-flex-wrap:wrap;
flex-wrap:wrap;
}
#box3{
-webkit-flex-wrap:wrap-reverse;
flex-wrap:wrap-reverse;
}
</style>
</head>
<body>
<ul id="box" class="box">
<li>a</li>
<li>b</li>
<li>c</li>
</ul>
<h2>flex-wrap:wrap</h2>
<ul id="box2" class="box">
<li>a</li>
<li>b</li>
<li>c</li>
</ul>
<h2>flex-wrap:wrap-reverse</h2>
<ul id="box3" class="box">
<li>a</li>
<li>b</li>
<li>c</li>
</ul>
</body>
</html>


atribut jajar-kandungan

Menetapkan atau mendapatkan semula Penjajaran baris flex tindanan flexbox .

Syntax

kandungan flex-start |. antara |. ruang-keliling |. Tepi permulaan paksi silang bagi baris pertama dalam bekas flexbox bersebelahan dengan tepi permulaan paksi silang bekas flexbox, dan setiap baris berikutnya bersebelahan dengan baris sebelumnya.

flex-end: Setiap baris disusun ke arah hujung bekas kotak flex. Sempadan hujung paksi silang bagi baris terakhir dalam bekas flexbox adalah berhampiran dengan sempadan hujung paksi silang bekas flexbox, dan setiap baris berikutnya adalah dekat dengan baris sebelumnya.

tengah: Setiap baris disusun ke arah tengah bekas kotak flex. Baris dijajarkan dua demi dua dan berpusat di dalam bekas fleksibel, mengekalkan jarak antara tepi kandungan permulaan paksi silang bekas dan baris pertama dan jarak antara tepi kandungan berakhir paksi silang dan baris terakhir jarak adalah sama. (Jika ruang yang tinggal negatif, baris akan menumpahkan jarak yang sama dalam kedua-dua arah.)

ruang-antara: Baris diagihkan sama rata dalam bekas fleksibel. Jika ruang yang tinggal adalah negatif atau hanya terdapat satu baris dalam bekas flex, nilai ini bersamaan dengan 'flex-start'. Dalam kes lain, tepi permulaan paksi silang baris pertama adalah bertentangan dengan tepi kandungan mula silang bekas fleksibel, tepi hujung paksi silang baris terakhir bertentangan dengan tepi kandungan silang hujung bekas fleksibel, dan selebihnya Baris disusun dalam tetingkap flexbox sedemikian rupa sehingga ruang antara mereka adalah sama.

ruang-keliling: Setiap baris diagihkan sama rata dalam bekas flexbox, meninggalkan separuh ruang antara sub-elemen di kedua-dua hujungnya. Jika ruang yang tinggal adalah negatif atau hanya terdapat satu baris dalam bekas flexbox, nilai ini bersamaan dengan 'tengah'. Dalam kes lain, baris disusun dalam bekas flexbox sedemikian rupa sehingga ruang di antaranya adalah sama, dan ruang sebelum baris pertama dan selepas baris terakhir ialah separuh daripada ruang baris lain.

regangan: Setiap baris akan meregang untuk mengambil ruang yang tinggal. Jika ruang yang tinggal adalah negatif, nilai ini bersamaan dengan 'flex-start'. Dalam kes lain, ruang yang tinggal dibahagikan sama rata antara semua baris untuk mengembangkan saiz paksi silangnya.

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title>php.cn</title> 
<style>
.box{
display:-webkit-flex;
display:flex;
-webkit-flex-wrap:wrap;
flex-direction:wrap;
width:200px;height:200px;margin:0;padding:0;border-radius:5px;list-style:none;background-color:#eee;}
.box li{margin:5px;padding:10px;border-radius:5px;background:#aaa;text-align:center;}
#box{
-webkit-align-content:flex-start;
align-content:flex-start;
}
#box2{
-webkit-align-content:flex-end;
align-content:flex-end;
}
#box3{
-webkit-align-content:center;
align-content:center;
}
#box4{
-webkit-align-content:space-between;
align-content:space-between;
}
#box5{
-webkit-align-content:space-around;
align-content:space-around;
}
#box6{
-webkit-align-content:strecth;
align-content:strecth;
}
</style>
</head>
<body>
<h2>align-content:flex-start</h2>
<ul id="box" class="box">
<li>a</li>
<li>b</li>
<li>c</li>
<li>d</li>
<li>e</li>
<li>f</li>
</ul>
<h2>align-content:flex-end</h2>
<ul id="box2" class="box">
<li>a</li>
<li>b</li>
<li>c</li>
<li>d</li>
<li>e</li>
<li>f</li>
</ul>
<h2>align-content:center</h2>
<ul id="box3" class="box">
<li>a</li>
<li>b</li>
<li>c</li>
<li>d</li>
<li>e</li>
<li>f</li>
</ul>
<h2>align-content:space-between</h2>
<ul id="box4" class="box">
<li>a</li>
<li>b</li>
<li>c</li>
<li>d</li>
<li>e</li>
<li>f</li>
</ul>
<h2>align-content:space-around</h2>
<ul id="box5" class="box">
<li>a</li>
<li>b</li>
<li>c</li>
<li>d</li>
<li>e</li>
<li>f</li>
</ul>
<h2>align-content:strecth</h2>
<ul id="box6" class="box">
<li>a</li>
<li>b</li>
<li>c</li>
<li>d</li>
<li>e</li>
<li>f</li>
</ul>
</body>
</html>


harta pesanan

Menetapkan atau mendapatkan semula kejadian elemen anak kotak flex susunan objek model.

Sintaks

pesanan: <integer>

<integer> : Gunakan nilai integer untuk menentukan susunan isihan, dengan nilai yang lebih kecil disenaraikan dahulu. Boleh jadi negatif.

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title>php.cn</title> 
<style>
.box{
display:-webkit-flex;
display:flex;
margin:0;padding:10px;list-style:none;background-color:#eee;}
.box li{width:100px;height:100px;border:1px solid #aaa;text-align:center;}
#box li:nth-child(3){
-webkit-order:-1;
order:-1;
}
</style>
</head>
<body>
<ul id="box" class="box">
<li>a</li>
<li>b</li>
<li>c</li>
<li>d</li>
<li>e</li>
</ul>
</body>
</html>


atribut align-self

Menetapkan atau mendapatkan semula elemen flexbox itu sendiri pada Jajaran sisi sepanjang paksi (paksi menegak).

Sintaks

selaraskan diri: auto | flex-end |


auto: Jika nilai 'align-self' ialah 'auto', nilai yang dikira ialah nilai 'align-item' bagi elemen induk elemen, atau jika ia tidak mempunyai elemen induk, Nilai yang dikira ialah 'regangan'.

flex-start: Sempadan kedudukan permulaan paksi silang (paksi menegak) elemen kotak lentur adalah berhampiran dengan sempadan permulaan paksi silang baris.

hujung lentur: Sempadan kedudukan permulaan paksi silang (paksi menegak) elemen kotak lentur adalah berhampiran dengan sempadan hujung paksi silang baris.

pusat: Elemen flexbox berpusat pada paksi silang (paksi menegak) baris. (Jika saiz baris lebih kecil daripada saiz elemen flexbox, ia akan melimpah panjang yang sama dalam kedua-dua arah).

garis dasar: Jika paksi sebaris dan paksi silang bagi elemen kotak fleksibel adalah sama, nilai ini bersamaan dengan 'fleks-mula'. Jika tidak, nilai ini akan mengambil bahagian dalam penjajaran garis dasar.

regangan: Jika nilai atribut yang menyatakan saiz paksi silang ialah 'auto', nilainya akan menjadikan saiz kotak margin item sehampir mungkin dengan saiz baris, tetapi pada masa yang sama hormati atribut 'min/max- width/height'.

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title>php.cn</title> 
<style>
.box{
display:-webkit-flex;
display:flex;
-webkit-align-items: flex-end;
height:100px;margin:0;padding:10px;border-radius:5px;list-style:none;background-color:#eee;}
.box li{margin:5px;padding:10px;border-radius:5px;background:#aaa;text-align:center;}
.box li:nth-child(1){
-webkit-align-self: flex-end;
align-self: flex-end;
}
.box li:nth-child(2){
-webkit-align-self: center;
align-self: center;
}
.box li:nth-child(3){
-webkit-align-self: flex-start;
align-self: flex-start;
}
.box li:nth-child(4){
-webkit-align-self: baseline;
align-self: baseline;
padding:20px 10px;
}
.box li:nth-child(5){
-webkit-align-self: baseline;
align-self: baseline;
}
.box li:nth-child(6){
-webkit-align-self: stretch;
align-self: stretch;
}
.box li:nth-child(7){
-webkit-align-self: auto;
align-self: auto;
}
</style>
</head>
<body>
<ul id="box" class="box">
<li>a</li>
<li>b</li>
<li>c</li>
<li>d</li>
<li>e</li>
<li>f</li>
<li>g</li>
<li>h</li>
<li>i</li>
</ul>
</body>
</html>


atribut lentur

atribut majmuk. Menetapkan atau mendapatkan semula cara elemen kanak-kanak bagi objek kotak fleksibel memperuntukkan ruang.

Jika singkatan flex:1, nilai pengiraannya ialah: 1 1 0

Sintaksis

flex: tiada |. [ flex-grow ] || [ flex-basis ] ||. nilai ialah: 0 0 auto

[ flex-grow ]: Mentakrifkan nisbah pengembangan elemen kotak fleksibel.


[ flex-shrink ]: Tentukan nisbah pengecutan elemen kotak flex.

[ flex-basis ]: Mentakrifkan nilai asas lalai bagi elemen kotak flex.

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title>php.cn</title> 
<style>
.box{
display:-webkit-flex;
display:flex;
max-width:400px;height:100px;margin:10px 0 0;padding:0;border-radius:5px;list-style:none;background-color:#eee;}
.box li{background:#aaa;text-align:center;}
.box li:nth-child(1){background:#999;}
.box li:nth-child(2){background:#aaa;}
.box li:nth-child(3){background:#ccc;}
#box li:nth-child(1){-webkit-flex:1;flex:1;}
#box li:nth-child(2){-webkit-flex:1;flex:1;}
#box li:nth-child(3){-webkit-flex:1;flex:1;}
#box2 li:nth-child(1){-webkit-flex:1 0 100px;flex:1 0 100px;}
#box2 li:nth-child(2){-webkit-flex:2 0 100px;flex:2 0 100px;}
#box2 li:nth-child(3){-webkit-flex:3 0 100px;flex:3 0 100px;}
#box3{max-width: 800px;}
#box3 li:nth-child(1){-webkit-flex:1 1 300px;flex:1 1 300px;background:#999;}
#box3 li:nth-child(2){-webkit-flex:1 2 500px;flex:1 2 500px;background:#aaa;}
#box3 li:nth-child(3){-webkit-flex:1 3 600px;flex:1 3 600px;background:#ccc;}
</style>
</head>
<body>
<ul id="box" class="box">
<li>flex:1;</li>
<li>flex:1;</li>
<li>flex:1;</li>
</ul>
<ul id="box2" class="box">
<li>flex:1 0 100px;</li>
<li>flex:2 0 100px;</li>
<li>flex:3 0 100px;</li>
</ul>
<ul id="box3" class="box">
<li>flex:1 1 400px;</li>
<li>flex:1 2 400px;</li>
<li>flex:1 2 400px;</li>
</ul>
</body>
</html>

Meneruskan pembelajaran
||
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php.cn</title> <style> .box{ display:-webkit-flex; display:flex; margin:0;padding:10px;list-style:none;background-color:#eee;} .box li{width:100px;height:100px;border:1px solid #aaa;text-align:center;} #box{ -webkit-flex-direction:row; flex-direction:row; } #box2{ -webkit-flex-direction:row-reverse; flex-direction:row-reverse; } #box3{ height:500px; -webkit-flex-direction:column; flex-direction:column; } #box4{ height:500px; -webkit-flex-direction:column-reverse; flex-direction:column-reverse; } </style> </head> <body> <h2>flex-direction:row</h2> <ul id="box" class="box"> <li>a</li> <li>b</li> <li>c</li> </ul> <h2>flex-direction:row-reverse</h2> <ul id="box2" class="box"> <li>a</li> <li>b</li> <li>c</li> </ul> <h2>flex-direction:column</h2> <ul id="box3" class="box"> <li>a</li> <li>b</li> <li>c</li> </ul> <h2>flex-direction:column-reverse</h2> <ul id="box4" class="box"> <li>a</li> <li>b</li> <li>c</li> </ul> </body> </html>
  • Cadangan kursus
  • Muat turun perisian kursus