HTML 行内元素 与 块级元素

article/2025/9/19 3:11:41

行内元素和块级元素

行内元素一般是内容的容器,而块级元素一般是其他容器的容器。一般情况下,行内元素只能包含内容或者其它行内元素,宽度和长度依据内容而定,不可以设置,可以和其它元素和平共处于一行;而块级元素可以包含行内元素和其它块级元素,且占据父元素的整个空间,可以设置 width 和 height 属性,浏览器通常会在块级元素前后另起一个新行。

因此,行内元素适合显示具体内容,而块级元素适合做布局。常用的行内和块级元素如下:

级别元素
行内元素a,b,strong,span,img,label,button,input,select,textarea
块级元素header,form,ul,ol,table,article,div,hr,aside,figure,canvas,video,audio,footer

之所以说“一般情况下”,是因为元素的级别不是一成不变的,浏览器是按照规范规定元素默认的级别,但是可以通过“display”属性改变其级别。

常用的 display 值

常用的 display 可能的值如下:

说明
inline以行内元素行为展示
block以块级元素行为展示
inline-block行内元素和块级元素特性兼而有之,既不会占满父元素,又可以设置width和height属性
table以表格的形式展示
table-cell以表格单元格的形式展示
table-row以表格行的形式展示
table-column以表格列的形式展示
flexCSS3 新增,虽然处于CR阶段,但是很多现代浏览器已经支持无前缀的该特性,IE从11开始部分支持。类似块级元素,但是可以用于制作自适应布局
inline-flex类似行内元素,但是可以用于制作自适应布局
gridCSS3 新增,目前处于“实验阶段(Experimental)”,只是得到了IE11和edge的部分支持

行内元素 和 块级元素 盒模型区别

行内元素尺寸由内含的内容决定,盒模型中 padding, border 与块级元素并无差异,都是标准的盒模型,但是 margin 却只有水平方向的值,垂直方向并没有起作用。

块级元素当没有明确指定 width 和 height 值时,块级元素尺寸由内容确定,当指定了 width 和 height 的值时,内容超出块级元素的尺寸就会溢出,这时块级元素要呈现什么行为要看其 overflow 的值,下面会提到。块级元素的 padding, border 和标准的盒模型一致,但是如果 width + padding + border + 指定的margin 小于其父元素的宽度时,浏览器会通过补margin 来填满整行。

块级元素 与 overflow

块级元素当没有明确指定 width 和 height 值时,块级元素尺寸由内容确定,当指定了 width 和 height 的值时,内容超出规定的尺寸就会溢出,元素的尺寸并不会随着内容改变。这时候使用 overflow 可以指定内容超出时的行为,当然, overflow 只对块级元素起作用,指定当内容超出块级容器的时候,块级元素该如何处理内容的显示。overflow 可能的值如下表:

说明
visible默认值,如果内容超出容器尺寸,不做任何处理
hidden超出的内容被截断并隐藏
scroll无论内容是否超出,总是显示滚动条。可以控制只显示一个方向的滚动条,这时应该设置 overflow-x 和 overflow-y
auto内容没有超出时,不显示滚动条;内容超出时,显示滚动条,且如果只有一个方向超出,那么只显示该方向上的滚动条

举个例子,html 结构是三个 DIV 元素,css 样式一样,只有 overflow 的值不同:

 <div class='block'>blockblockblock</div><div class='block-hidden'>blockblockblock</div><div class='block-auto'>blockblockblock</div>
.block{height: 40px;width: 100px;font-size: 30px;padding: 10px;border: 6px solid rgb(120, 120, 120);margin: 20px;background-color: rgb(255, 0, 0);
}
.block-hidden{height: 40px;width: 100px;font-size: 30px;padding: 10px;border: 6px solid rgb(120, 120, 120);margin: 20px;background-color: rgb(255, 0, 0);overflow: hidden;
}
.block-auto{height: 40px;width: 100px;font-size: 30px;padding: 10px;border: 6px solid rgb(120, 120, 120);margin: 20px;background-color: rgb(255, 0, 0);overflow: auto;
}

最终,面对三种设置,效果是这样的。

三种overflow

总结

文章总结了行内元素和块级元素的区别,每个元素都可以通过 display 来设置行内还是块级显示,inline 和 block 是两种显示模型,浏览器对每个元素都要采用一种模型来呈现元素,上面我们提到的行内元素和块级元素分组,其实并不是它们天生就应该这样,而是浏览器按照规范指定了默认值,因此即使我们没有指定这些属性,那些元素仍然会按照其所属类别渲染呈现。通过display 可以改变元素对应的渲染呈现模型,也就是盒模型。当块级元素的内容超出容器时,使用 overflow 属性来指定块级元素的行为。

但凡涉及页面渲染呈现,都脱离不了与 CSS盒模型的关系,所以掌握盒模型是理解前端规范和浏览器行为的前提。display 属性各种值其实是不同的渲染呈现模型,包括新增的 flex 和 grid,后面的文章我们再分享看的 flex 布局是神马,它解决了什么痛点,为什么比较火。


http://chatgpt.dhexx.cn/article/AFKpfogh.shtml

相关文章

Html块级元素详解

Html块级元素详解 *块级元素 常见的有&#xff1a;div &#xff0c; table&#xff0c; tr &#xff0c; from &#xff0c; ul &#xff0c;li &#xff0c;ol &#xff0c;h1~h6&#xff0c; p 盒子 div 标签 <div class"bq" style"width: 100px; height…

HTML的块级元素(常用整理)

emmm&#xff0c;最近想整理复习一下前端的基础&#xff0c;最开始的HTML想了好久也没想好怎么写&#xff0c;最后也是决定以行块这样整理&#xff0c;再在后面补充吧。 说到HTML&#xff0c;什么是HTML呢&#xff1f; 什么是 HTML&#xff1f;HTML 是用来描述网页的一种语言。…

html5:块级元素

最常见块级元素&#xff1a;div div的属性&#xff1a; <div title"title属性">title属性</div> title属性&#xff1a; 当鼠标悬停在div上时候会有一个小的提示框 <div id"div1">div1</div> id属性可以理解为为当前div提供…

详解块级元素、行内元素、行内块级元素类型、区别及相互转化

1)块级元素 特点&#xff1a; 1.总是从新的一行开始 2.高度、宽度都是可控的 3.宽度没有设置时&#xff0c;默认为100% 4.块级元素中可以包含块级元素和行内元素 5.块级文字元素中不能放入其他块级元素 6.块级大多为结构性标记 常见块级元素&#xff1a; <center>…

块级元素和行内元素的区别

前言&#xff1a;本文转载自原文。为了更好的理解相关概念&#xff0c;本文在原文的基础上做出了部分补充和修改。 一、概论 本部分内容先从整体上概括的阐述块级元素和行内元素的区别&#xff0c;主要从三个不同的角度介绍。 1. 元素排列位置 行内元素会在一行上显示&…

HTML基础(三):常用的块级元素

在了解网页基础结构框架后便正式开始常用块级元素的学习&#xff1a; 块级元素引入 什么是块级元素&#xff1f;块级元素是HTML规范中的一个概念&#xff0c;大多数HTML 元素被定义为块级元素或内联元素。通常&#xff0c;块级元素被称为块元素。与其对应的&#xff0c;还有一…

html框架详解和布局

html的框架详解和布局 什么是框架&#xff1f; 框架将浏览器划分成不同的部分&#xff0c;每一部分加载不同的页面&#xff0c;实现在同一浏览器窗口中加载多个页面的效果 划分框架标记 语法格式 <frameset>....<frameset>属性 cols 使用“像素数”和%分割左右窗…

灵活使用layui布局

灵活使用layui布局 开发工具与关键技术&#xff1a;vs 作者&#xff1a; 撰写时间&#xff1a;使用layui布局&#xff0c;让其做的上下对齐&#xff0c;左右居中的效果。不用额外的给字段写代码&#xff0c;减少代码量&#xff0c;让代码更加轻便简单。Layui布局的定义总共分为…

Layui布局的使用

1、现在任何的页面都离不开页面的布局&#xff0c;页面的布局直接影响到整个页面的效果&#xff0c; 一个好的页面布局可以让人看了印象深刻&#xff1b; 2、接下来就聊聊怎么的页面布局才更好的让人牢牢的记住&#xff1b; 3、首先&#xff0c;打开layui的链接找到布局那个…

好用的前端flex布局,通用的flex布局CSS代码

我的社交恐惧症&#xff0c;主要来自于&#xff0c;收入低??? 今天看到一个图&#xff0c;真是人间真实&#xff1a;   不知道大家上班之后有没有经常写前端&#xff0c;反正身为后端的我是经常写前端的&#xff0c;尤其是调样式调的人痛不欲生&#xff0c;最烦人的是&am…

layui的页面布局分析

《layui的页面布局分析》 开发工具与关键技术&#xff1a;Visual Studio / Layui插件 作者&#xff1a;肖春庆 撰写时间&#xff1a;2019年06月09日 在软件的开发过程中&#xff0c;视图页面是给用户的第一印象&#xff0c;那么开发者如何布局页面才能给用户一个好页面呢&#…

前端开发_HTML5_布局-表格布局

表格布局 1.引入 我们之前学习了HTML5相关的标签内容&#xff0c;之后又学习了相关的一些样式以及特效&#xff0c;下面我们接着学习一个重要的内容:页面布局。 2.表格布局概述 所谓的表格布局就是使用表格内容的特性:可以使用"tr"产生行&#xff0c;使用“td”产生…

Bulma - 免费开源的纯 CSS 前端 UI 框架,专注于构建移动优先的响应式 web 界面

简单易用的 CSS 框架&#xff0c;虽然只有一个 CSS 文件&#xff0c;但功能很强大&#xff0c;在国外很受开发者欢迎&#xff0c;推荐给大家。 关于 Bulma CSS 框架 Bulma 是一个简单、很容易自定义的 CSS UI 框架&#xff0c;提供了众多预定义好的样式&#xff0c;开发者可以…

jQuery、Bootstrap、Layui和响应式布局

前端 一、jQuery1.1 概念1.2 jQuery对象的获取1.2.1 获取语法1.2.2 基本选择器1.2.3 属性及伪类选择器1.2.4 获取对象-过滤选择器1.2.5 案例 1.3 jQuery修改属性1.4 jQuery修改样式1.5 jQuery和DOM对象之间的转换1.5.1 jQuery对象转DOM对象1.5.2 DOM对象转jQuery对象 1.6 jQuer…

Layui——经典模块化前端UI框架(快速入门)

一、Layui框架简介 Layui&#xff08;谐音&#xff1a;类UI) 是一款采用自身模块规范编写的前端 UI 框架&#xff0c;遵循原生 HTML/CSS/JS 的书写与组织形式&#xff0c;门槛极低&#xff0c;拿来即用。其外在极简&#xff0c;却又不失饱满的内在&#xff0c;体积轻盈&#x…

layui表单布局

layui-form 表单标签 layui-form-item 表单项&#xff0c;块级元素&#xff0c;一个表单项标签内可放多个输入框 layui-form-label 表单标签 layui-input-block 块级输入框 layui-input input输入框样式 layui-inline 外层行内 layui-input-inline 内层行内 layui…

LayUI中的布局

前言 最近在准备找工作的事项&#xff0c;但是作为一个后台也是需要了解一些前端框架的。就目前的来说有大火的VUE&#xff0c;但是VUE还是存在一定的学习成本&#xff0c;所以决定先从对后台友好的LayUI开始入手先做一些小项目练练手&#xff0c;后面会考虑使用VUEElementUI做…

css form实例 用CSS实现表单form布局实例

用CSS实现表单form布局实例&#xff0c;css form实例 很多时候我们遇到Form表单&#xff0c;左边是文字标题&#xff0c;右边是表单input空&#xff0c;对于新手来说是非常麻烦的事&#xff0c;好了接下来我们将奉送一段 divcss 代码关于Form表单布局实例及源代码。 Css form…

antdesign-vue框架form表单布局

下拉框赋默认值 <a-form-item label"催单状态&#xff1a;"><a-selectv-decorator"[reminderStatus,{initialValue: $store.getters.enterpriseId ? 2 : 0}]"style"width:100%;"allowClear><a-select-option value"0"…

Layui框架:layui的格栅布局规则

1、划分layui区域 layui-container&#xff1a;layui框架的容器&#xff0c;作用类似于flex布局的容器。 <div class"layui-container">// 在网页上划分一个区域&#xff0c;该区域专门使用layui的布局模块 </div> 在layui框架中&#xff0c;任何行上方…