第 29 章 CSS3 弹性伸缩布局[上]_html/css_WEB-ITnose
学习要点:
1.布局简介
2.旧版本
主讲教师:李炎恢
本章主要探讨 HTML5 中 CSS3 提供的用来实现未来响应式弹性伸缩布局方案,这里做一个初步的了解。
一.布局简介
CSS3 提供一种崭新的布局方式:Flexbox 布局,即弹性伸缩布局模型(Flexible Box)。用来提供一个更加有效的方式实现响应式布局。但是用于这个布局方式还处于 W3C 的草案阶段,并且它还分为旧版本、新版本以及混合过渡版本三种不同的编码方式。在发展中,可能还有各种改动,浏览器的兼容性还存在问题。所以,本节课作为初步了解即可。
首先,我们来看下旧版本的浏览器兼容情况:
Flexbox 旧版本兼容情况
属性 | IE | Firefox | Chrome | Opera | Safari |
带前缀 | 无 | 4 ~ 25 | 4 ~ 31 | 15 ~ 18 | 5.17+ |
不带前缀 | 无 | 无 | 无 | 无 | 无 |
以上的数据,我们摘自 CSS3 手册上的。当然,不同的教材和文章的会略有不同。但误差率也就一到两个版本,影响不大。
首先,第一步:先创建一段内容,分成三个区域。
//HTML 部分
<div> <p> 第一段内容... </p> <p> 第二段内容... </p> <p> 第三段内容... </p></div>
//CSS 部分
p { width: 150px; border: 1px solid gray; margin: 5px; padding: 5px;}div { display: -moz-box; display: -webkit-box; display: box;}
通过以上设置,在除了 IE 浏览器外,布局实现了水平分布。那么下面,我们就重点研究一下这些属性的含义。
二.旧版本
如果属性和属性值为:display:box,那么就是 2009 年 7 月份设定的工作草案,属于旧版本。它面向的是一些早期浏览器的弹性布局方案。
首先,我们要将几个需要布局模块的父元素设置一下容器属性 display。
属性值 | 说明 |
box | 将容器盒模型作为块级弹性伸缩盒显示(旧版本) |
inline-box | 将容器盒模型作为内联级弹性伸缩盒显示(旧版本) |
我们知道块级它是占用整行的,类似
//设置弹性,以火狐为例
div { display: -moz-box;}
1.box-orient 属性
box-orient 主要实现盒子内部元素的流动方向。
//设置垂直流动
div { -webkit-box-orient: vertical;}
属性值 | 说明 |
horizontal | 伸缩项目从左到右水平排列 |
vertical | 伸缩项目从上到下垂直排列 |
inline-axis | 伸缩项目沿着内联轴排列显示 |
block-axis | 伸缩项目沿着块轴排练显示 |
2.box-direction
box-direction 属性主要是设置伸缩容器中的流动顺序。
//设置逆序
div { -moz-box-direction: reverse;}
属性值 | 说明 |
normal | 默认值,正常顺序 |
reverse | 逆序 |
3.box-pack
box-pack 属性用于伸缩项目的分布方式。
//分布方式已结束位置靠齐
div { -moz-box-pack: end;}
属性值 | 说明 |
start | 伸缩项目以起始点靠齐 |
end | 伸缩项目以结束点靠齐 |
center | 伸缩项目以中心点靠齐 |
justify | 伸缩项目平局分布,-webkit-支持,-moz-不支持 |
4.box-align
box-align 属性用来处理伸缩容器的额外空间。//居中对齐,清理上下额外空间
div { -moz-box-align: center;}
属性值 | 说明 |
start | 伸缩项目以顶部为基准,清理下部额外空间 |
end | 伸缩项目以底部为基准,清理上部额外空间 |
center | 伸缩项目以中部为基准,平均清理上下部额外空间 |
baseline | 伸缩项目以基线为基准,清理额外的空间 |
stretch | 伸缩项目填充整个容器,默认 |
5.box-flex
box-flex 属性可以使用浮点数分配伸缩项目的比例//设置每个伸缩项目占用的比例
p:nth-child(1) { -moz-box-flex: 1;}p:nth-child(2) { -moz-box-flex: 2.5;}p:nth-child(3) { -moz-box-flex: 1;}
6.box-ordinal-group
box-ordinal-group 属性可以设置伸缩项目的显示位置。
//将第一个位置的元素,跳转到第三个位置
p:nth-child(1) { -moz-box-ordinal-group: 3;}

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

L'article traite du HTML & lt; Progress & GT; élément, son but, son style et ses différences par rapport au & lt; mètre & gt; élément. L'objectif principal est de l'utiliser & lt; Progress & gt; pour l'achèvement des tâches et & lt; mètre & gt; pour stati

L'article traite du HTML & lt; Datalist & GT; élément, qui améliore les formulaires en fournissant des suggestions de saisie semi-automatique, en améliorant l'expérience utilisateur et en réduisant les erreurs. COMMANDE COMPRES: 159

L'article examine les meilleures pratiques pour assurer la compatibilité des navigateurs de HTML5, en se concentrant sur la détection des fonctionnalités, l'amélioration progressive et les méthodes de test.

L'article traite du HTML & lt; mètre & gt; élément, utilisé pour afficher des valeurs scalaires ou fractionnaires dans une plage, et ses applications courantes dans le développement Web. Il différencie & lt; mètre & gt; De & lt; Progress & gt; et ex

L'article discute de l'utilisation des attributs de validation de formulaire HTML5 comme les limites requises, motifs, min, max et longueurs pour valider la saisie de l'utilisateur directement dans le navigateur.

Cet article explique le html5 & lt; time & gt; élément de représentation sémantique de date / heure. Il souligne l'importance de l'attribut DateTime pour la lisibilité à la machine (format ISO 8601) à côté du texte lisible par l'homme, stimulant AccessIbilit

L'article traite de la balise Meta de la fenêtre, essentielle pour la conception Web réactive sur les appareils mobiles. Il explique comment une utilisation appropriée garantit une mise à l'échelle optimale du contenu et une interaction utilisateur, tandis que la mauvaise utilisation peut entraîner des problèmes de conception et d'accessibilité.

L'article traite du & lt; iframe & gt; L'objectif de Tag dans l'intégration du contenu externe dans les pages Web, ses utilisations courantes, ses risques de sécurité et ses alternatives telles que les balises d'objet et les API.
