Table des matières
第一段标题
第二段标题
第三段标题
第四段标题
第五段标题
Maison interface Web tutoriel HTML 第 28 章 CSS3 多列布局_html/css_WEB-ITnose

第 28 章 CSS3 多列布局_html/css_WEB-ITnose

Jun 24, 2016 am 11:19 AM

学习要点:

1.早期多列问题

2.属性及版本

3.属性解释

 

主讲教师:李炎恢

 

本章主要探讨 HTML5 中 CSS3 提供的多列布局,通过多列布局我们方便的创建流体的多列布局。

 

一.早期多列问题

我们有时想布局成报纸、杂志那样的多列方式(至少两列,一般三列以上),但早期 CSS 提供的布局方式都有着极大的限制。如果是固体布局,那么使用浮动或定位布局都可以完成。但对于流体的多列,比如三列以上,那只能使用浮动布局进行,而它又有极大的限制。因为它是区块性的,对于动态的内容无法伸缩自适应,基本无能力。

//五段内容,分为三列

<div>    <p>        我是第一段内容....省略的部分复制大量文本    </p>    <p>        我是第二段内容....省略的部分复制大量文本    </p>    <p>        我是第三段内容....省略的部分复制大量文本    </p>    <p>        我是第四段内容....省略的部分复制大量文本    </p>    <p>        我是第五段内容....省略的部分复制大量文本    </p></div>
Copier après la connexion

//带标题的五段内容,分为三列

<div>    <h4 id="第一段标题">第一段标题</h4>    <p>        我是第一段内容....省略的部分复制大量文本    </p>    <h4 id="第二段标题">第二段标题</h4>    <p>        我是第二段内容....省略的部分复制大量文本    </p>    <h4 id="第三段标题">第三段标题</h4>    <p>        我是第三段内容....省略的部分复制大量文本    </p>    <h4 id="第四段标题">第四段标题</h4>    <p>        我是第四段内容....省略的部分复制大量文本    </p>    <h4 id="第五段标题">第五段标题</h4>    <p>        我是第五段内容....省略的部分复制大量文本    </p></div>
Copier après la connexion

上门两组内容,如果想用浮动和定位实现流体三列,基本不可能。并且实际应用中,需求可能多变,要更改成四列或者五列呢?所以,CSS3 提供了多列布局属性 columns 来实现这个动态变换的功能。

二.属性及版本

CSS3 提供了 columns 多列布局属性等 7 个属性集合,具体如下:

属性

说明

columns

集成 column-width 和 column-count 两个属性

column-width

定义每列列宽度

column-count

定义分分列列数

column-gap

定义列间距

column-rule

定义列边框

column-span

定义多列布局中子元素跨列效果,firefox 不支持

column-fill

控制每列的列高效果,主流浏览器不支持

由于 column 属性集尚未纳入标准,大多数浏览器必须使用厂商前缀才能访问,好在主流的浏览器都可以很好的支持了。下面是主流浏览器的支持和前缀情况。

Opera

Firefox

Chrome

Safari

IE

支持需带前缀

11.5 ~ 29

2 ~ 40

4 ~ 45

3.1 ~ 8

支持不带前缀

10.0+

通过上面的表格,我们可以了解到,要想让最新的浏览器全部实现效果,都必须使用前缀。

//完整形式

-webkit-columns: 150px 4;-moz-columns: 150px 4;columns: border-box;
Copier après la connexion

三.属性解释

为了方便演示,我们在 Firefox 火狐浏览器测试,只用-moz-前缀演示。

1.columns

columns 是一个复合属性,包含 columns-width 和 columns-count 这两种简写。意为同时设置分列列数和分列宽度。//分成四列,每列宽度自适应

-moz-columns: auto 4;
Copier après la connexion

2.column-width

column-width 属性,用于设置每列的宽度。

//设置列宽

-moz-column-width: 200px;
Copier après la connexion

这里设置了 200px,有点最小宽度的意思。当浏览器缩放到小于 200 大小时,将变成 1 列显示。而如果是 auto,则一直保持四列。

属性

说明

auto

默认值,自适应。

长度值

设置列宽。

3.column-count

column-count 属性,用于设置多少列。

//设置列数

-moz-column-count: 4;
Copier après la connexion

属性值

说明

auto

默认值,表示就 1 列。

数值

设置列数。

4.column-gap

column-gap 属性,用于设置列间距

//设置列间距

-moz-column-gap: 100px; 
Copier après la connexion

属性值

说明

auto

默认值,表示就 1 列。

数值

设置列数。

5.column-rule

column-rule 属性,设置每列中间的分割线//设置列边线

-moz-column-rule: 2px dashed gray; 
Copier après la connexion

属性

说明

column-rule

<宽度> <样式> <颜色>的边框简写形式。

column-rule-width

单独设置边框宽度。

column-rule-style

单独设置边框的样式。

column-rule-color

单独设置边框的颜色。

列边线不会影响到布局,它会根据布局的缩放自我调整是否显示。如果我们把页面缩放到只能显示一列时,它自动消失了。

6.column-span

column-span 属性,设置跨列大标题。

//跨列标题,由于火狐尚未支持,固使用 webkit

-webkit-column-span: all; 
Copier après la connexion

属性

说明

none 

默认值,表示不跨列。

all

表示跨列。

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

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

HTML est-il facile à apprendre pour les débutants? HTML est-il facile à apprendre pour les débutants? Apr 07, 2025 am 12:11 AM

HTML convient aux débutants car il est simple et facile à apprendre et peut rapidement voir les résultats. 1) La courbe d'apprentissage de HTML est fluide et facile à démarrer. 2) Il suffit de maîtriser les balises de base pour commencer à créer des pages Web. 3) Flexibilité élevée et peut être utilisée en combinaison avec CSS et JavaScript. 4) Les ressources d'apprentissage riches et les outils modernes soutiennent le processus d'apprentissage.

Les rôles de HTML, CSS et JavaScript: responsabilités de base Les rôles de HTML, CSS et JavaScript: responsabilités de base Apr 08, 2025 pm 07:05 PM

HTML définit la structure Web, CSS est responsable du style et de la mise en page, et JavaScript donne une interaction dynamique. Les trois exercent leurs fonctions dans le développement Web et construisent conjointement un site Web coloré.

Quel est un exemple d'une balise de départ dans HTML? Quel est un exemple d'une balise de départ dans HTML? Apr 06, 2025 am 12:04 AM

Anexampleofastartingtaginhtmlis, qui abinginsaparagraph.startingtagsaressentialtinhtmlastheyinitiateelements, définit les éventualités, et la faculté de réduction des pages et de la construction de la création.

Comprendre HTML, CSS et JavaScript: un guide pour débutant Comprendre HTML, CSS et JavaScript: un guide pour débutant Apr 12, 2025 am 12:02 AM

WebDevelopmentReliesOnHTML, CSS, etjavascript: 1) HTMLSTRUCTURESCONTENT, 2) CSSSTYLESIT, et3) JavascriptAdddsInterActivity, Forming TheasisofmodernweBEBExperiences.

Comment implémenter la disposition adaptative de la position de l'axe y dans l'annotation Web? Comment implémenter la disposition adaptative de la position de l'axe y dans l'annotation Web? Apr 04, 2025 pm 11:30 PM

L'algorithme adaptatif de la position de l'axe y pour la fonction d'annotation Web Cet article explorera comment implémenter des fonctions d'annotation similaires aux documents de mots, en particulier comment gérer l'intervalle entre les annotations ...

Gitee Pages STATIQUE Le déploiement du site Web a échoué: comment dépanner et résoudre les erreurs de fichier unique 404? Gitee Pages STATIQUE Le déploiement du site Web a échoué: comment dépanner et résoudre les erreurs de fichier unique 404? Apr 04, 2025 pm 11:54 PM

GiteEpages STATIQUE Le déploiement du site Web a échoué: 404 Dépannage des erreurs et résolution lors de l'utilisation de Gitee ...

HTML, CSS et JavaScript: outils essentiels pour les développeurs Web HTML, CSS et JavaScript: outils essentiels pour les développeurs Web Apr 09, 2025 am 12:12 AM

HTML, CSS et JavaScript sont les trois piliers du développement Web. 1. HTML définit la structure de la page Web et utilise des balises telles que, etc. 2. CSS contrôle le style de page Web, en utilisant des sélecteurs et des attributs tels que la couleur, la taille de la police, etc. 3. JavaScript réalise les effets dynamiques et l'interaction, par la surveillance des événements et les opérations DOM.

Comment utiliser CSS3 et JavaScript pour réaliser l'effet de la diffusion et de l'agrandissement des images environnantes après avoir cliqué? Comment utiliser CSS3 et JavaScript pour réaliser l'effet de la diffusion et de l'agrandissement des images environnantes après avoir cliqué? Apr 05, 2025 am 06:15 AM

Pour obtenir l'effet de la diffusion et de l'élargissement des images environnantes après avoir cliqué sur l'image, de nombreuses conceptions Web doivent obtenir un effet interactif: cliquez sur une certaine image pour faire les environs ...

See all articles