第 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;}

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics











WebdevelopmentreliesonHTML,CSS,andJavaScript:1)HTMLstructurescontent,2)CSSstylesit,and3)JavaScriptaddsinteractivity,formingthebasisofmodernwebexperiences.

HTML, CSS and JavaScript are the three pillars of web development. 1. HTML defines the web page structure and uses tags such as, etc. 2. CSS controls the web page style, using selectors and attributes such as color, font-size, etc. 3. JavaScript realizes dynamic effects and interaction, through event monitoring and DOM operations.

The roles of HTML, CSS and JavaScript in web development are: 1. HTML defines the web page structure, 2. CSS controls the web page style, and 3. JavaScript adds dynamic behavior. Together, they build the framework, aesthetics and interactivity of modern websites.

The future trends of HTML are semantics and web components, the future trends of CSS are CSS-in-JS and CSSHoudini, and the future trends of JavaScript are WebAssembly and Serverless. 1. HTML semantics improve accessibility and SEO effects, and Web components improve development efficiency, but attention should be paid to browser compatibility. 2. CSS-in-JS enhances style management flexibility but may increase file size. CSSHoudini allows direct operation of CSS rendering. 3.WebAssembly optimizes browser application performance but has a steep learning curve, and Serverless simplifies development but requires optimization of cold start problems.

The future of HTML is full of infinite possibilities. 1) New features and standards will include more semantic tags and the popularity of WebComponents. 2) The web design trend will continue to develop towards responsive and accessible design. 3) Performance optimization will improve the user experience through responsive image loading and lazy loading technologies.

The roles of HTML, CSS and JavaScript in web development are: HTML is responsible for content structure, CSS is responsible for style, and JavaScript is responsible for dynamic behavior. 1. HTML defines the web page structure and content through tags to ensure semantics. 2. CSS controls the web page style through selectors and attributes to make it beautiful and easy to read. 3. JavaScript controls web page behavior through scripts to achieve dynamic and interactive functions.

HTML is the cornerstone of building web page structure. 1. HTML defines the content structure and semantics, and uses, etc. tags. 2. Provide semantic markers, such as, etc., to improve SEO effect. 3. To realize user interaction through tags, pay attention to form verification. 4. Use advanced elements such as, combined with JavaScript to achieve dynamic effects. 5. Common errors include unclosed labels and unquoted attribute values, and verification tools are required. 6. Optimization strategies include reducing HTTP requests, compressing HTML, using semantic tags, etc.

The role of HTML is to define the structure and content of a web page through tags and attributes. 1. HTML organizes content through tags such as , making it easy to read and understand. 2. Use semantic tags such as, etc. to enhance accessibility and SEO. 3. Optimizing HTML code can improve web page loading speed and user experience.
