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

news/2024/12/12 7:14:45/

HTML中的元素可以分为两种类型:行内元素(inline)和块级元素(block)

文章目录

    • 什么是行内元素
    • 什么是块级元素
    • 元素转换
      • 行内元素转块级元素
      • 块级元素转行内元素
    • 区别
    • 总结

什么是行内元素

HTML的行内元素(inline element)是指那些不会打断文本流,在一行内显示的元素。行内元素通常用于包裹文本或者在文本中嵌入其他标记或元素。

常见的行内元素有:

  • <span>:用于为文本或一系列文本设置样式或添加标记。
  • <a>:用于创建超链接。
  • <strong>:用于表示强调的文本。
  • <em>:用于表示强调并且带有斜体效果的文本。
  • <img>:用于嵌入图片。
  • <input>:用于创建输入框。
  • <button>:用于创建按钮。

代码示例:

<body>
<div style="background-color: red"><span>1</span><a>2</a><strong>3</strong><em>4</em><img src="image/b9cb884daa9721c19acb562864ed9c9.png" style="height: 100px;width: 100px"><input type="text"><button>5</button>
</div>
</body>

结果:
在这里插入图片描述
行内元素的特性包括:

  • 不会独占一行,会在一行内显示。
  • 宽度和高度由内容决定,无法通过CSS设置固定的宽度和高度。
  • 可以设置左右外边距(margin)和内边距(padding),但上下外边距和内边距不会影响其他元素的布局。

需要注意的是,行内元素可以通过CSS的display属性设置为块级元素,使其以块级元素的方式显示。

什么是块级元素

HTML的块级元素(block-level element)是指那些会始终独占一行的元素,即会从新的一行开始显示。块级元素通常用于组织和布局页面内容的结构。

常见的块级元素有:

  • <div>:用于组织和布局页面的块级内容。
  • <p>:用于表示段落。
  • <h1>-<h6>:用于表示标题。
  • <ul><ol>:用于创建无序列表和有序列表。
  • <li>:用于表示列表项。
  • <table>:用于创建表格。
  • <form>:用于创建表单。

代码示例:

<body>
<div style="background-color: red">1</div>
<p style="background-color: blue">2</p>
<h1 style="background-color: green">3</h1>
<ul style="background-color: cyan">4</ul>
<ol style="background-color: purple">5</ol>
<li style="background-color: lawngreen">6</li>
<table style="background-color: orange">7</table>
<form style="background-color: black;color: red">8</form>
</body>

结果:
在这里插入图片描述
块级元素的特性包括:

  • 独占一行,会从新的一行开始显示。
  • 可以设置宽度、高度、外边距和内边距。
  • 默认情况下,宽度会自动填满父容器的宽度。
  • 可以包含其他块级元素和行内元素。

需要注意的是,块级元素可以通过CSS的display属性设置为行内元素或者行内块元素,使其以行内元素的方式显示。

元素转换

需要注意的是,也可以通过CSS的display属性将行内元素转换为块级元素,或将块级元素转换为行内元素。如:

行内元素转块级元素

    <style>.a{display: block;}</style>
<body>
<span class="a">1</span>
<span>2</span>
<span>3</span>
</body>

结果:
在这里插入图片描述

可以看到1加了转换独自占了一行,而2和3在一行里

块级元素转行内元素

    <style>.a{display: inline;}</style>
<body>
<div class="a">1</div>
<div class="a">2</div>
<div>3</div>
</body>

结果:
在这里插入图片描述

可以看到1和2都转换为行内元素就在一行里了,而3没有转换所以独自一行

区别

区别一: 行内元素不从新行开始,只占用必要宽度和高度;块级元素总是从新行开始,并占用其父元素的可用的全部宽度。
区别二:块级元素可能包含行内元素,有时也包含其他块级元素,行内元素只能包含数据和其他行内元素。
区别三:行内元素设置内外边距不会影响其他元素;块级元素设置内外边距会影响其他元素。

总结

以下内容是本文的重点知识

行内元素不从新行开始,只占用必要宽度;块级元素总是从新行开始,并占用其父元素的可用的全部宽度。

块级元素可能包含行内元素,有时也包含其他块级元素,行内元素只能包含数据和其他行内元素。a元素例外,它可以包含块级元素,例如div。

修改元素的display属性,例如把display属性值从“inline”修改为“block”或者从“block”修改为“inline",并不会改变元素的类别和内容模型。例如,即使把span元素的display属性修改为”block“,它仍然属于行内元素并且不能内嵌div元素。


http://www.ppmy.cn/news/1277383.html

相关文章

NIO的实战教程(简单且高效)

1. 参考 建议按顺序阅读以下三篇文章 为什么NIO被称为同步非阻塞&#xff1f; Java IO 与 NIO&#xff1a;高效的输入输出操作探究 【Java.NIO】Selector&#xff0c;及SelectionKey 2. 实战 我们将模拟一个简单的HTTP服务器&#xff0c;它将响应客户端请求并返回一个固定的…

FPGA模块——以太网(1)MDIO读写

FPGA模块——以太网MDIO读写 MDIO接口介绍MDIO接口代码&#xff08;1&#xff09;MDIO接口驱动代码&#xff08;2&#xff09;使用MDIO驱动的代码 MDIO接口介绍 MDIO是串行管理接口。MAC 和 PHY 芯片有一个配置接口&#xff0c;即 MDIO 接口&#xff0c;可以配置 PHY 芯片的工…

【设计模式--结构型--代理模式】

设计模式--结构型--代理模式 代理模式概述结构静态代理案例&#xff1a;卖车票jdk动态代理cglib代理三种代理对比优缺点使用场景 代理模式 概述 由于某些原因需要给某对象提供一个代理以控制该对象的访问。这时&#xff0c;访问对象不适合或者不能直接引用目标对象&#xff0…

管理类联考——数学——真题篇——按题型分类——充分性判断题——蒙猜D

先看目录&#xff0c;除了2018年比较怪&#xff0c;其他最多2个D&#xff08;数学只有两个弟弟&#xff0c;一个大弟&#xff0c;一个小弟&#xff09; 文章目录 2023真题&#xff08;2023-16&#xff09;-D 2022真题&#xff08;2022-21&#xff09;-D-分析选项⇒是否等价⇒是…

用户管理第2节课--idea 2023.2 后端--实现基本数据库操作(操作user表)

一、模型user对象>和数据库的字段关联 & 自动生成 【其中涉及删除表数据&#xff0c;一切又从零开始】 二、模型user对象>和数据库的字段关联 2.1在model文件夹下&#xff0c;新建 user对象 2.1.1 概念 大家可以想象我们现在的数据是存储在数据库里的&…

org.slf4j日志组件实现日志功能

slf4j 全称是Simple Logging Facade for Java。facade是一种设计模式。 slf4j 是一个抽象程度更高的日志组件&#xff0c;本身并不提供实际的日志功能。实际的日志功能是通过log4j等日志组件实现&#xff0c;而使用者只需要关心 slf4j 给出的API。 slf4j 仅仅是一个为Java程序提…

【提示工程】Chain-of-Thought Prompting Elicits Reasoning in Large Language Models

解决问题 探索大语言模型解决推理问题的能力。从头训练或微调模型&#xff0c;需要创建大量的高质量含中间步骤的数据集&#xff0c;成本过大。 相关工作 1、使用中间步骤来解决推理问题 &#xff08;1&#xff09;使用自然语言通过一系列中间步骤解决数学应用题 &#xff0…

隐藏通信隧道技术——防御SSH隧道攻击的思路

隐藏通信隧道技术——防御SSH隧道攻击的思路 ​ 在内网中建立一个稳定、可靠的数据通道&#xff0c;对渗透测试工作来说具有重要的意义。应用层的隧道通信技术主要利用应用软件提供的端口来发送数据。常用的隧道协议有SSH、HTTP/HTTPS和DNS。 SSH协议 在一般情况下&#xff…