一、元素的分类
根据css显示分类,XHTML元素被分为 三种类型:块状元素,内联元素,可变元素
1、块级元素特点
a、块状元素在网页中就是以块的形式显示,所谓块状就是元素显示为矩形区域,
B:默认情况下,块状元素都会占据一行,通俗地说,两个相邻块状元素不会出现并列显示的现象;默认情况下,块状元素会按顺序自上而下排列。
C:块状元素都可以定义自己的宽度和高度。
D:块状元素一般都作为其他元素的容器,它可以容纳其它内联元素和其它块状元素。我们可以把这种容器比喻为一个盒子。
2、内联元素(inline element)(或是行内元素)
内联元素三大特点:
A:内联元素的表现形式是始终以行内逐个进行显示;
B:内联元素没有自己的形状,不能定义它的宽和高,它显示的宽度、高度只能根据所包含内容的高度和宽度来确定,它的最小内容单元也会呈现矩形形状;
C:内联元素也会遵循盒模型基本规则,如可以定义padding,border,margin,background等属性,但个别属性不能正确显示;(padding-top:;margin-top/bottom:;)
3、常见的块级元素、内联元素
块级元素:
div -最常用的块级元素
dl - 和dt-dd 搭配使用的块级元素
form - 交互表单
h1 -h6- 大标题
hr - 水平分隔线
ol – 有序列表
p - 段落
ul - 无序列表
fieldset - 表单字段集
colgroup-col - 表单列分组元素
table-tr-td 表格及行-单元格
pre - 格式化文本
内联元素:
a –超链接(锚点)
br - 换行
i - 斜体
em - 强调
img - 图片
input - 输入框
label - 表单标签
span - 常用内联容器,定义文本内区块
strong - 粗体强调
sub - 下标
sup - 上标
textarea - 多行文本输入框
u - 下划线
select - 项目选择
可变元素
需要根据上下文关系确定该元素是块元素或者内联元素。 例如: button - 按钮 del - 删除文本
二、元素的转变
元素类型的转换
需要根据上下文关系确定该元素是块元素或者内联元素。
盒子模型可通过display属性来改变默认的显示类型
display属性和属性值(18个属性值)
常用属性值:block/inline/inline-block/none/list-item/flex
作用:该属性设置或检索对象元素应该生成的盒模型的类型
各属性值的作用:
1)block块状显示:类似在元素后面添加换行符,也就是说其他元素不能在其后面并列显示。(将元素转为块状元素,使该元素拥有块状元素的特点;)
2)inline内联显示:在元素后面删除换行符,多个元素可以在一行内并列显示。(元素转换为内联元素)
3)当元素设置了float属性后,就相当于给该元素加了display:block;声明;
4)inline-block行内块元素显示:元素的内容以块状显示,行内的其他元素显示在同一行。(只有这一个元素类型支持vertical-align属性)img,input(行内块元素)。
5)none 此元素不会被显示。
6)list-item:将元素转换成列表。li的默认类型。
基本类型
A、大部分块元素display属性值默认为block,其中列表li的默认值为list-item。
B、大部分内联元素的display属性值默认为inline,其中img,input,默认为inline-block(行内块元素)。
三、垂直居中
设置一个元素在一个容器中垂直居中,必须更改默认的display属性值为inline-block;
并加上同级元素(标尺)(同级元素[标尺]样式设置为vertical-align:middle;width:0;height:100%;display:inline-block;) 。
三个条件:
1:必须给容器(父元素)加上text-align:center;
2:必须给当前元素转成行内块元素(display:inline-block;)再给当前元素加上vertical-align:middle;
3:在当前元素的后面(没有回车)加上同级元素span;并对span进行vertical-align:middle;width:0;height:100%;display:inline-block