元素分类:
大多数 HTML 元素被定义为块级元素或内联元素。
行内元素有:
块状元素有:
1. 块元素
每一个网页元素都有一个display属性,用于确定该元素的类型,每一个元素都有默认的display属性值,比如div元素,它的默认display属性值为“block”,成为“块级”元素;div这样的块级元素,就会自动占据一定矩形空间,也就是一行,可以通过设置高度height、宽度width、内外边距等属性,来调整的这个矩形的样子。块级元素在浏览器显示时,通常会以新行来开始(和结束)。
实例: <h1>, <p>, <ul>, <table>。
如果一行中想放多个块元素,可以让其浮动,这个后面我们在学习。
2. 行元素
行元素也叫内联元素,只是叫法不同。如span元素的默认display属性值为“inline”,称为“行内”元素。像“span”“a”这样的行内元素,没有自己的独立空间,它是依附于其他块级元素存在的,因此,对行内元素设置高度、宽度、内外边距等属性,都是无效的。内联元素在显示时通常不会以新行开始。实例: <b>, <td>, <a>, <img>
3.区别
(1).块级元素会独占一行,其宽度自动填满其父元素宽度;行内元素不会独占一行,相邻的行内元素会排列在同一行里,直到一行排不下,才会换行,其宽度随元素的内容而变化。
(2). 一般情况下,块级元素可以设置 width, height属性,行内元素设置width, height无效。(注意:块级元素即使设置了宽度,仍然是独占一行的)
(3).块级元素可以设置margin 和 padding. 行内元素的水平方向的padding-left,padding-right,margin-left,margin-right 都产生边距效果,但是竖直方向的padding-top,padding-bottom,margin-top,margin-bottom都不会产生边距效果。(水平方向有效,竖直方向无效)
如下例子:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>div 和span</title>
</head>
<body>
<div style="width: 300px;height: 300px;background-color: aqua"></div>
<div style="width: 300px;height: 300px;background-color: aqua"></div>
<span style="background-color: burlywood">123</span>
<span style="background-color: burlywood">123</span>
</body>
</html>
4. 转换
块转行 display:inline
行转块display:block
5.可变元素
可变元素为根据上下文语境决定该元素为块元素或者内联元素。 applet - java applet ,button - 按钮 ,del - 删除文本 ,iframe - inline frame ,ins - 插入的文本 ,map - 图片区块(map) ,object - object对象 ,script - 客户端脚本