好程序员web前端分享CSS元素类型
目标
· 1、元素类型分类依据和元素类型分类
· 2、元素类型的转换
· 3、inline-block元素类型的应用
· 4、置换和非置换元素的概念和应用案例
一、元素类型分类依据和元素类型分类
根据
css显示分类,XHTML元素被分为三种类型
:块状元素,内联元素1.块状元素(block element)
A
)块状元素在网页中就是以块的形式显示,所谓块状就是元素显示为矩形区域,常用的块状元素包块
div,dl,dt,dd,ol,ul,li,(h1-h6),p,form,hr,table,tr,td,
等;
B
)默认情况下,块状元素都会占据一行,通俗地说,两个相邻块状元素不会出现并列显示的现象;默认情况下,块状元素会按顺序自上而下排列。
C
)块状元素都可以定义自己的宽度和高度。
D
)块状元素一般都作为其他元素的容器,它可以容纳其它内联元素和其它块状元素。我们可以把这种容器比喻为一个盒子
注
:p标签是一个块元素,但它只能作为内联元素(
inline element
)的容器;
2.内联元素(inline element)(或是行内元素)
A)
常见的内联元素如:
a,span,i,em,strong,b,u,del,s,input,img,br,sub,sup
等
B)
内联元素的表现形式是始终以行内逐个进行显示;
C)
内联元素没有自己的形状,不能定义它的宽和高
,
它显示的宽度、高度只能根据所包含内容的高度和宽度来确定,它的最小内容单元也会呈现矩形形状;
D)
内联元素也会遵循盒模型基本规则,如可以定义
padding,border,margin,background
等属性,
padding,border,margin
上下的值没有实际功能
;
二、元素类型的转换
元素可通过
display属性来改变元素的默认显示类型1)display属性与属性值 (18个属性值)
属性值:
block/inline/inline-block(
img,input
)
/none/list-item(li)/table-row/table(table)/table-cell(td)/table-header-group(thead)/table-footer-group
(tfoot);作用:块状元素和内联元素之间的转换。
说明:各属性值的作用
1)Block
块状显示:类似在元素后面添加换行符,也就是说其他元素不能在其后面并列显示。或者就是让元素竖排显示。
2)inline
内联显示:在元素后面删除换行符,多个元素可以在一行内并列显示。或者就是让元素横排显示。
3)Inline-block
行内块状显示:元素的内容以块状显示,行内的其他元素显示在同一行。
(此元素类型支持
vertical-align属性)
img,input
4)none
:隐藏元素, 此元素不会被显示。
5)list-item:
将元素转换成列表。
li
的默认类型。
6
)当元素设置了
float
属性后,就相当于该元素加了
display:block
;
注:
A、大部分块元素
display
属性值默认为
block
,其中
li
列表的默认值为
list-item
。
B
、大部分内联元素的
display
属性值默认为
inline,
其中
img,input
,默认为
inline-block
。
三、inline-block元素类型的应用
Inline-block行内块元素显示:元素的内容以块状显示,行内的其他元素显示在同一行。
(此元素类型可以支持
vertical-align属性)img,input垂直对齐方式
{vertical-align:top(元素的顶端与行中最高的元素顶端对齐)/bottom元素的底端与行中最低的元素底端对齐/middle/sub(与父元素的下标字体基线对齐)/super(与父元素的上标字体基线对齐)/text-top(与父元素的字体顶端对齐)/text-bottom(与父元素的字体底端对齐);}四、置换和非置换元素的概念
拓展:
置换元素
/替换元素 概念:一个内容不受CSS视觉格式化模型控制,CSS渲染模型并不考虑对此内容的渲染,且元素本身一般拥有固有尺寸(宽度,高度,宽高比)的元素,这些元素往往没有实际的内容,即是一个空元素,置换元素就是浏览器根据元素的属性和属性值,来决定元素的具体显示内容。大部分的置换元素的元素类型为inline-block;被称之为置换元素。HTML中的img、input都是置换元素。 例如浏览器会根据img标签的src属性的值来读取图片信息并显示出来。 又例如根据input标签的type属性来决定是显示输入框,还是单选按钮等。 非置换元素/不可置换元素 :HTML中除了可替换元素外,其它都是不可替换元素(即其内容直接表现给用户端例如浏览器)