第 16 章 CSS 盒模型[下] - 水之原
学习要点:
1.元素可见性
2.元素盒类型
3.元素的浮动
主讲教师:李炎恢
本章主要探讨 HTML5 中 CSS 盒模型,学习怎样了解元素的外观配置以及文档的整体布局。
一.元素可见性
使用 visibility 属性可以实现元素的可见性,这种样式一般可以配合 JavaScript 来实现效果。样式表如下:
属性 |
值 |
说明 |
CSS 版本 |
|
visible |
默认值,元素在页面上可见。 |
2 |
visibility |
hidden |
元素不可见,但会占据空间。 |
2 |
|
collapse |
元素不可见,隐藏表格的行与列,如果不是表格,则和 hidden 一样。 |
2 |
//设置元素隐藏,但占位
<span style="color: #800000;">div </span>{<span style="color: #ff0000;"> visibility</span>:<span style="color: #0000ff;"> hidden</span>; }
//隐藏表格的行或列,但不占位,Chrome 和 Opera 不支持
<span style="color: #800000;">table tr:first-child </span>{<span style="color: #ff0000;"> visibility</span>:<span style="color: #0000ff;"> collapse</span>; }
二.元素盒类型
CSS 盒模型中的 display 属性,可以更改元素本身盒类型。那么元素有哪些盒类型呢?主要有:1.块级元素(区块);2 行内元素(内联);3 行内-块级元素(内联块);4.隐藏元素。
1.块级元素
所谓块级元素,就是能够设置元素尺寸、隔离其他元素功能的元素。比如:
等文档元素。
2.行内元素
所谓行内元素,不能够设置元素尺寸,它只能自适应内容、无法隔离其他元素,其它元素会紧跟其后。比如:、等文本元素。
3.行内-块元素
所谓行内-块元素,可以设置元素尺寸,但无法隔离其他元素的元素。比如。
属性 |
值 |
说明 |
CSS 版本 |
|
block |
盒子为块级元素 |
1 |
display |
inline |
盒子为行内元素 |
1 |
inline-block |
盒子为行内-块元素 |
2 |
|
|
|||
|
none |
盒子不可见,不占位 |
1 |
//将行内元素转成块级元素
<span style="color: #800000;">span </span>{<span style="color: #ff0000;"> background</span>:<span style="color: #0000ff;"> silver</span>;<span style="color: #ff0000;"> width</span>:<span style="color: #0000ff;"> 200px</span>;<span style="color: #ff0000;"> height</span>:<span style="color: #0000ff;"> 200px</span>;<span style="color: #ff0000;"> display</span>:<span style="color: #0000ff;"> block</span>; }
//将块级元素转换成行内元素
<span style="color: #800000;">div </span>{<span style="color: #ff0000;"> background</span>:<span style="color: #0000ff;"> silver</span>;<span style="color: #ff0000;"> width</span>:<span style="color: #0000ff;"> 200px</span>;<span style="color: #ff0000;"> height</span>:<span style="color: #0000ff;"> 200px</span>;<span style="color: #ff0000;"> display</span>:<span style="color: #0000ff;"> inline</span>; }
//将块级元素转化成行内-块元素
<span style="color: #800000;">div </span>{<span style="color: #ff0000;"> background</span>:<span style="color: #0000ff;"> silver</span>;<span style="color: #ff0000;"> width</span>:<span style="color: #0000ff;"> 200px</span>;<span style="color: #ff0000;"> height</span>:<span style="color: #0000ff;"> 200px</span>;<span style="color: #ff0000;"> display</span>:<span style="color: #0000ff;"> inline-block</span>; }
//将元素隐藏且不占位
<span style="color: #800000;">div </span>{<span style="color: #ff0000;"> display</span>:<span style="color: #0000ff;"> none</span>; }
display 属性还有非常多的值,有些后面部分讲解,而有些支持度不好或者尚不支持,从而省略。有兴趣的,可以参考 CSS3 手册。
三.元素的浮动
CSS 盒模型有一种叫浮动盒,就是通过 float 属性建立盒子的浮动方向,样式表如下:
属性 |
值 |
说明 |
CSS 版本 |
|
left |
浮动元素靠左 |
1 |
float |
right |
浮动元素靠右 |
1 |
|
none |
禁用浮动 |
1 |
//实现联排效果
<span style="color: #800000;">#a </span>{<span style="color: #ff0000;"> background</span>:<span style="color: #0000ff;"> gray</span>;<span style="color: #ff0000;"> float</span>:<span style="color: #0000ff;"> left</span>; }<span style="color: #800000;"> #b </span>{<span style="color: #ff0000;"> background</span>:<span style="color: #0000ff;"> maroon</span>;<span style="color: #ff0000;"> float</span>:<span style="color: #0000ff;"> left</span>; }<span style="color: #800000;"> #c </span>{<span style="color: #ff0000;"> background</span>:<span style="color: #0000ff;"> navy</span>;<span style="color: #ff0000;"> float</span>:<span style="color: #0000ff;"> left</span>; }
//实现元素右浮动
<span style="color: #800000;">#c </span>{<span style="color: #ff0000;"> background</span>:<span style="color: #0000ff;"> navy</span>;<span style="color: #ff0000;"> float</span>:<span style="color: #0000ff;"> right</span>; }
//取消元素的浮动
<span style="color: #800000;">#c </span>{<span style="color: #ff0000;"> background</span>:<span style="color: #0000ff;"> navy</span>;<span style="color: #ff0000;"> float</span>:<span style="color: #0000ff;"> none</span>; }
刚才的浮动有一个问题:当一个元素盒子被浮动后,下面的元素会自动堆叠处理,导致元素不可见或部分不可见。我们可以使用 clear 属性来处理。
属性 |
值 |
说明 |
CSS 版本 |
clear |
none |
允许两边均可浮动 |
1 |
|
left |
左边界不得浮动 |
1 |
|
right |
右边界不得浮动 |
1 |
|
both |
两边都不得浮动 |
1 |
//两边均不可浮动
<span style="color: #800000;">#c </span>{<span style="color: #ff0000;"> background</span>:<span style="color: #0000ff;"> navy</span>;<span style="color: #ff0000;"> clear</span>:<span style="color: #0000ff;"> both</span>; }

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

AI Hentai Generator
Menjana ai hentai secara percuma.

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

Artikel ini membincangkan html & lt; datalist & gt; elemen, yang meningkatkan bentuk dengan menyediakan cadangan autokomplete, meningkatkan pengalaman pengguna dan mengurangkan kesilapan. Kira -kira: 159

Artikel ini membincangkan html & lt; kemajuan & gt; elemen, tujuan, gaya, dan perbezaan dari & lt; meter & gt; elemen. Tumpuan utama adalah menggunakan & lt; kemajuan & gt; untuk menyelesaikan tugas dan & lt; meter & gt; untuk stati

Artikel ini membincangkan menggunakan atribut pengesahan bentuk HTML5 seperti had, corak, min, max, dan panjang untuk mengesahkan input pengguna secara langsung dalam penyemak imbas.

Artikel ini membincangkan & lt; iframe & gt; Tujuan TAG dalam membenamkan kandungan luaran ke dalam halaman web, kegunaan umum, risiko keselamatan, dan alternatif seperti tag objek dan API.

Artikel ini membincangkan html & lt; meter & gt; elemen, digunakan untuk memaparkan nilai skalar atau pecahan dalam julat, dan aplikasi umum dalam pembangunan web. Ia membezakan & lt; meter & gt; dari & lt; kemajuan & gt; dan Ex

Artikel ini membincangkan tag Meta Viewport, penting untuk reka bentuk web responsif pada peranti mudah alih. Ia menerangkan bagaimana penggunaan yang betul memastikan skala kandungan yang optimum dan interaksi pengguna, sementara penyalahgunaan boleh membawa kepada isu reka bentuk dan kebolehaksesan.

Artikel membincangkan amalan terbaik untuk memastikan keserasian silang pelayar HTML5, memberi tumpuan kepada pengesanan ciri, peningkatan progresif, dan kaedah ujian.

Artikel ini menerangkan html5 & lt; time & gt; elemen untuk perwakilan tarikh/masa semantik. Ia menekankan pentingnya atribut DateTime untuk pembacaan mesin (format ISO 8601) bersama teks yang boleh dibaca manusia, meningkatkan aksesibilit
