gogogo
管理员
管理员
  • UID25
  • 粉丝0
  • 关注0
  • 发帖数1377
阅读:4566回复:1

块级元素、行内元素以及它们的转换

楼主#
更多 发布于:2020-10-16 11:47
HTML可以将大多数元素分为行内元素、块级元素这两种,并且它们是可以互相转换的。


1.行内元素
 ■特点

(1)宽高就是内容的高度,不可以改变;
(2)对margin仅设置左右方向有效,上下无效;padding设置上下左右都有效,即会撑大空间;
(3)和其他元素都在同一行,不会自动进行换行;
(4)内联元素只能容纳文本或者其他内联元素。
■有哪些
       a - 锚点
       abbr - 缩写
       acronym - 首字
       b - 粗体(不推荐)
       bdo - bidi override
       big - 大字体
       br - 换行
       cite - 引用
       code - 计算机代码(在引用源码的时候需要)
       dfn - 定义字段
       em - 强调
       font - 字体设定(不推荐)
       i - 斜体
       img - 图片
       input - 输入框
       kbd - 定义键盘文本
       label - 表格标签
       q - 短引用
       s - 中划线(不推荐)
       samp - 定义范例计算机代码
       select - 项目选择
       small - 小字体文本
       span - 常用内联容器,定义文本内区块
       strike - 中划线
       strong - 粗体强调      //h5中已取消
       sub - 下标
       sup - 上标
       textarea - 多行文本输入框
       tt - 电传文本
       u - 下划线
       var - 定义变量
        ■img、input到底是行内元素还是块级元素?
       img、input属于行内替换元素。height/width/padding/margin均可用,效果等于块元素。(X)HTML中的<img>、<input>、<textarea>、<select>、<object>都是替换元素。


替换元素就是浏览器根据元素的标签和属性,来决定元素的具体显示内容。替换元素一般有内在尺寸,所以具有width和height,可以设定。例如你不指定img的width和height时,就按其内在尺寸显示,也就是图片被保存的时候的宽度和高度。对于表单元素,浏览器也有默认的样式,包括宽度和高度。
(X)HTML 的大多数元素是不可替换元素,即其内容直接表现给用户端(例如浏览器)。




2.块级元素
■特点

(1)能够识别宽高(宽度没有设置时,默认为100%);
(2)margin和padding的上下左右均对其有效;
(3)可以自动换行;
(4)可以容纳行内元素和其它块元素。
■有哪些
       address - 地址
       blockquote - 块引用
       center - 居中对齐块
       dir - 目录列表
       div - 常用块级容易,也是css layout的主要标签
       dl - 定义列表
       fieldset - form控制组
       form - 交互表单
       h1 - 大标题
       h2 - 副标题
       h3 - 3级标题
       h4 - 4级标题
       h5 - 5级标题
       h6 - 6级标题
       hr - 水平分隔线
       isindex - input prompt
       menu - 菜单列表
       noframes - frames可选内容(对于不支持frame的浏览器显示此区块内容)
       noscript - 可选脚本内容(对于不支持script的浏览器显示此内容)
       ol - 排序列表
       p - 段落
       pre - 格式化文本
       table - 表格
       ul - 非排序列表




3.行内块级元素
行内块级元素综合了行内元素和块级元素的特性,但是各有取舍。
■特点
(1)不自动换行;
(2)能够识别宽高;
(3)默认排列方式为从左到右。


4.块级元素和行内元素之间的转换
       display
块元素默认display:block;行内非替换元素(a,span)默认为display:inline;行内替换元素(input)默认为display:inline-block;
a.display:none;不显示该元素,也不会保留该元素原先占有的文档流位置;
b.display:block;转换为块级元素;
c.display:inline;转换为行内元素;

d.display:inline-block;转换为行内块级元素。
       float
当把行内元素设置完float:left/right后,该行内元素的display属性会被赋予block值,且拥有浮动特性。行内元素去除了之间的莫名空白。
       position
当为行内元素进行定位时,position:absolute与position:fixed.都会使得原先的行内元素变为块级元素。

参考文献:1.说说行内元素和块级元素
2.HTML行内元素、块状元素、行内块状元素的区别
3. img、input到底是行内还是块级元素?
gogogo
管理员
管理员
  • UID25
  • 粉丝0
  • 关注0
  • 发帖数1377
沙发#
发布于:2020-10-16 11:48
HTML可以将元素分类方式分为行内元素、块状元素和行内块状元素三种。首先需要说明的是,这三者是可以互相转换的,使用display属性能够将三者任意转换:
(1)display:inline;转换为行内元素
(2)display:block;转换为块状元素
(3)display:inline-block;转换为行内块状元素
游客


返回顶部