第 29 章 CSS3 弹性伸缩布局[下]_html/css_WEB-ITnose
学习要点:
1.新版本
主讲教师:李炎恢
本章主要探讨 HTML5 中 CSS3 提供的用来实现未来响应式弹性伸缩布局方案,这里做一个初步的了解。
一.新版本
新版本的 Flexbox 模型是 2012 年 9 月提出的工作草案,这个草案是由 W3C 推出的最新语法。这个版本立志于指定标准,让新式的浏览器全面兼容,在未来浏览器的更新换代中实现了统一。
首先,设置伸缩盒的 display 有如下两个属性值:
属性值 | 说明 |
flex | 将容器盒模型作为块级弹性伸缩盒显示(新版本) |
inline-flex | 将容器盒模型作为内联级弹性伸缩盒显示(新版本) |
//大部分不需要前缀
div { display: flex;}
属性 | IE | Firefox | Chrome | Opera | Safari |
带前缀 | 无 | 无 | 21 ~ 28 | 无 | 7.0 |
不带前缀 | 11+ | 20+ | 29+ | 12.1 | 无 |
从这张表可以看出,只有 webkit 引擎的浏览器 Chrome 和 Safari 的版本需要添加-webkit-,而 Chrome 浏览器 29 版本以后可以省略了。
1.flex-direction
flex-direction 属性和旧版本 box-orient 属性一样,都是设置伸缩项目的排列方式。
//设置从上往下排列
div { flex-direction: column;}
属性值 | 说明 |
row | 设置从左到右排列 |
row-reverse | 设置从右到左排列 |
column | 设置从上到下排列 |
column-reverse | 设置从下到上排列 |
2.flex-wrap
flex-wrap 属性类似与旧版本中的 box-lines,但是 box-lines 我们没有讲解,原因是没有浏览器支持它。
//设置无法容纳时,自动换行
div { -ms-flex-wrap: wrap;}
属性值 | 说明 |
nowrap | 默认值,都在一行或一列显示 |
wrap | 伸缩项目无法容纳时,自动换行 |
wrap-reverse | 伸缩项目无法容纳时,自动换行,方向和 wrap 相反 |
3.flex-flow
flex-flow 属性是集合了排列方向和控制换行的简写形式。
//简写形式
div { flex-flow: row wrap;}
4.justify-content
justify-content 属性和旧版本中的 box-pack 一样,设置伸缩项目的对其方式。
//按照中心点对齐
div { justify-content: space-around;}
属性值 | 说明 |
flex-start | 伸缩项目以起始点靠齐 |
flex-end | 伸缩项目以结束点靠齐 |
center | 伸缩项目以中心点靠齐 |
space-between | 伸缩项目平局分布 |
space-around | 同上,但两端保留一半的空间 |
5.align-items
align-items 属性和旧版本中的 box-align 一样,处理伸缩项目容器的额外空间。
//处理额外空间
div { align-itmes: center;}
属性值 | 说明 |
flex-start | 伸缩项目以顶部为基准,清理下部额外空间 |
flex-end | 伸缩项目以底部为基准,清理上部额外空间 |
center | 伸缩项目以中部为基准,平均清理上下部额外空间 |
baseline | 伸缩项目以基线为基准,清理额外的空间 |
stretch | 伸缩项目填充整个容器,默认 |
6.align-self
align-self 和 align-items 一样,都是清理额外空间,但它是单独设置某一个伸缩项目的。所有的值和 align-itmes 一致。
//单独设置清理额外空间
p:nth-child(2) { align-self: center;}
7.flex
flex 属性和旧版本中的 box-flex 类似,用来控制伸缩容器的比例分配。
//设置比例分配
p:nth-child(1) { flex: 1;}p:nth-child(2) { flex: 3;}p:nth-child(3) { flex: 1;}
8.order
order 属性和 box-ordinal-group 属性一样控制伸缩项目出现的顺序。
//设置伸缩项目顺序
p:nth-child(1) { order: 2;}p:nth-child(2) { order: 3;}p:nth-child(3) { order: 1;}

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas











WebDevelopmentReliesOnhtml, CSS, andjavascript: 1) HtmlStructuresContent, 2) CSSStylesit, dan3) JavaScriptaddsInteractivity, Formingthebasisofmodernwebexperiences.

HTML mentakrifkan struktur web, CSS bertanggungjawab untuk gaya dan susun atur, dan JavaScript memberikan interaksi dinamik. Ketiga melaksanakan tugas mereka dalam pembangunan web dan bersama -sama membina laman web yang berwarna -warni.

HTML, CSS dan JavaScript adalah tiga tiang pembangunan web. 1. HTML mentakrifkan struktur laman web dan menggunakan tag seperti, dan sebagainya. 2. CSS mengawal gaya laman web, menggunakan pemilih dan atribut seperti warna, saiz font, dan lain-lain.

Peranan HTML, CSS dan JavaScript dalam pembangunan web adalah: 1. HTML mentakrifkan struktur laman web, 2. CSS mengawal gaya laman web, dan 3. JavaScript menambah tingkah laku dinamik. Bersama -sama, mereka membina kerangka, estetika dan interaktiviti laman web moden.

Masa depan HTML penuh dengan kemungkinan yang tidak terhingga. 1) Ciri -ciri dan piawaian baru akan merangkumi lebih banyak tag semantik dan populariti komponen web. 2) Trend reka bentuk web akan terus berkembang ke arah reka bentuk yang responsif dan boleh diakses. 3) Pengoptimuman prestasi akan meningkatkan pengalaman pengguna melalui pemuatan imej yang responsif dan teknologi pemuatan malas.

Trend masa depan HTML adalah semantik dan komponen web, trend masa depan CSS adalah CSS-in-JS dan CSShoudini, dan trend masa depan JavaScript adalah webassembly dan tanpa pelayan. 1. Semantik HTML meningkatkan kebolehcapaian dan kesan SEO, dan komponen web meningkatkan kecekapan pembangunan, tetapi perhatian harus dibayar kepada keserasian penyemak imbas. 2. CSS-in-JS meningkatkan fleksibiliti pengurusan gaya tetapi boleh meningkatkan saiz fail. Csshoudini membolehkan operasi langsung rendering CSS. 3.Webassembly mengoptimumkan prestasi aplikasi penyemak imbas tetapi mempunyai keluk pembelajaran yang curam, dan tanpa pelayan memudahkan pembangunan tetapi memerlukan pengoptimuman masalah permulaan sejuk.

Peranan HTML, CSS dan JavaScript dalam pembangunan web adalah: HTML bertanggungjawab untuk struktur kandungan, CSS bertanggungjawab untuk gaya, dan JavaScript bertanggungjawab untuk tingkah laku dinamik. 1. HTML mentakrifkan struktur laman web dan kandungan melalui tag untuk memastikan semantik. 2. CSS mengawal gaya laman web melalui pemilih dan atribut untuk menjadikannya cantik dan mudah dibaca. 3. JavaScript mengawal tingkah laku laman web melalui skrip untuk mencapai fungsi dinamik dan interaktif.

HTML adalah asas struktur laman web bangunan. 1. HTML mentakrifkan struktur kandungan dan semantik, dan penggunaan, dan sebagainya. 2. Menyediakan penanda semantik, seperti, dan sebagainya, untuk meningkatkan kesan SEO. 3. Untuk merealisasikan interaksi pengguna melalui tag, perhatikan pengesahan bentuk. 4. Gunakan elemen lanjutan seperti, digabungkan dengan JavaScript untuk mencapai kesan dinamik. 5. Kesilapan biasa termasuk label yang tidak terkawal dan nilai atribut yang tidak disebutkan, dan alat pengesahan diperlukan. 6. Strategi pengoptimuman termasuk mengurangkan permintaan HTTP, memampatkan HTML, menggunakan tag semantik, dll.
