【HTML】元素的分类(块元素、行内元素、行内块元素)

元素的分类

  • 块元素
  • 行内元素
  • 行内块元素
  • 转换

块元素

独占一行,宽度默认为容器的100%,可以设置宽、高、行高、内外边距;布局时,块元素可以包含块元素和行内元素

<div>div</div><p>p</p><h3>h1-h6</h3><hr>
<form action="">form</form>
<dl><dt>dt</dt><dd>dd</dd>
</dl>
<table border="1"><tr><th>tr</th><th>tr</th></tr><tr><th>tr</th><th>tr</th></tr>
</table>
<table border="1"><tr><th>tr</th><th>tr</th></tr><tr><th>tr</th><th>tr</th></tr>
</table>
<ul><li>ul > li</li></ul>
<ol><li>ol > li</li></ol>
<header>header</header><aside>aside</aside><footer>footer</footer>
<section>section</section><nav>nav</nav><article>article</article>

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

行内元素

不会独占一行;不可以设置宽、高且无效,可以设置内外边距仅设置左右方向有效,上下无效;元素的宽高取决于内容的宽高,如果一行空间不够,会自动换行显示;布局时,行内元素一般不包含块级元素

<button>button</button>
<sub>下标</sub><sup>上标</sup>
<span>span</span>
<del>del</del><strong>strong</strong><ins>ins</ins><em>em</em>
<a href="#">a</a>
<input type="text"><label>lable</label>
<img src="./images/小车汽车.png"></img>
<video controls src="./images/videoEdit.mp4" width="200px" height="200px"></video>
<audio controls src="./images/Clairo-may-as-well.mp3"></audio>
<select><option value="">select</option><option value="">select</option><option value="">select</option>
</select>
<textarea>textarea</textarea>

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

行内块元素

它的宽、高、行高、内外边距都可以控制;默认宽度就是它本身内容的宽度,不独占一行

<style>button,input,textarea,img{padding: 5px;margin: 20px;width: 200px;height: 60px;}
</style>
<button>button</button>
<input placeholder="input" type="text">
<textarea>textarea</textarea>
<img src="images/小车汽车.png">

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

但是行内块元素之间会有空白缝隙,需要去除 根据具体的需求和实际情况‌选择以下方法

1) 将行内块元素之间的 html 代码写在同一行,删除换行符和空格‌
2) 通过设置父元素的字体大小为 0‌,可以使空白文本节点不占据空间,再为行内块元素设置合适的字体大小
3) 使用负的间距( margin ),通过为行内块元素设置负的间距,可以抵消它们之间的间隙
4) 给行内块元素添加 float 属性(浮动)

<style>img{border: 1px solid red;/*float: left;*//*margin: -3px;*/}div{font-size: 0;}
</style>
<div><img src="images/小车汽车.png"><img src="images/小车汽车.png"><img src="images/小车汽车.png"><img src="images/小车汽车.png"><img src="images/小车汽车.png"><img src="images/小车汽车.png"><img src="images/小车汽车.png"><img src="images/小车汽车.png">
</div>

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

转换

定义元素为行内元素display: inline;

<style>div{border: 1px solid #f531ff;display: inline;  /*强转为行内元素*/}
</style>
<div>div1</div>
<div>div2</div>
<div>div3</div>

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

定义元素为块级元素display: block;

<style>span{border: 1px solid #f531ff;display: block; /*强转为块元素*/}
</style>
<span>span1</span>
<span>span2</span>
<span>span3</span>

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

定义元素为行内块级元素display: inline-block;

<style>span{border: 1px solid #f531ff;display: inline-block; /*强转为行内块元素*/}div{border: 1px solid #f531ff;display: inline-block; /*强转为行内块元素*/}
</style>
<span>span</span>
<div>div</div>

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

元素宽度的百分比是相对于父元素的宽度的百分比。元素的内边距与外边距,都是相对于父元素的宽度的百分比。元素的宽度是内容的宽度,真实占据的位置是内容宽度+内边距+边框。元素的高度的百分比是相对于父元素的高度的百分比,一般不会设置高度 高度就是内容的高度。一行只有一个容器你才能居中,如果有多个,需要自己设置宽度和边距进行居中排列

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/425949.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++——内存管理

目录 引言 C/C的内存分布 C语言中动态内存管理方式 C内存管理方式 1.new/delete操作内置类型 2.new与delete操作自定义类型 operator new与operator delete函数 new与delete的实现 1.内置类型 2.自定义类型 定位new表达式 malloc/free和new/delete的区别 结束语 引…

关于Spring Cloud Gateway中 Filters的理解

Spring Cloud Gateway中 Filters的理解 Filters Filters拦截器的作用是&#xff0c;对请求进行处理 可以进行流量染色 ⭐增加请求头 例子 spring:cloud:gateway:routes:- id: add_request_header_routeuri: http://localhost:8123predicates:- Path/api/**filters:- AddR…

Redis的缓存穿透、缓存雪崩、缓存击穿怎么解决

Redis在实际使用中是会遇到很多问题的&#xff0c;例如今天说到的缓存穿透、缓存雪崩、缓存击穿。 缓存穿透&#xff1a; 缓存穿透是指客户端请求的数据在redis缓存和数据中都不存在&#xff0c;这样缓存永远都不会生效&#xff0c;这些请求都会打到数据库当中&#xff0c;对…

MySQL_数据类型简介

课 程 推 荐我 的 个 人 主 页&#xff1a;&#x1f449;&#x1f449; 失心疯的个人主页 &#x1f448;&#x1f448;入 门 教 程 推 荐 &#xff1a;&#x1f449;&#x1f449; Python零基础入门教程合集 &#x1f448;&#x1f448;虚 拟 环 境 搭 建 &#xff1a;&#x1…

Setting Design Properties

设置设计属性 接下来&#xff0c;在设计上设置配置模式。这是导致物理 约束&#xff0c;在这种情况下是设计的属性&#xff0c;而不是单元的属性。首先&#xff0c;列出所有 当前设计的特性。 1.在Tcl控制台中列出设计的属性&#xff1a; list_property [current_design] 此命…

ITOP-2 分模块安装部署itop

ITOP-2 分模块安装部署itop 一、安装PHP组件1、查看当前Linux服务器安装的PHP版本2、安装源epel&#xff0c;安装源remi&#xff0c;安装yum-config-manager3、用yum-config-manager指定remi的php7.2仓库4、安装升级php5、验证当前PHP的版本 二、部署 MySQL 服务1、设置 Repo2、…

基于TRIZ的救援机器人轻量化设计

在救援机器人设计中&#xff0c;轻量化是一个至关重要的目标&#xff0c;它直接关系到机器人的便携性、运输效率以及在复杂环境中的作业能力。TRIZ理论为我们提供了一套系统化的工具和方法&#xff0c;用于解决设计过程中遇到的各种挑战&#xff0c;特别是在实现轻量化目标时&a…

论文阅读-Demystifying Misconceptions in Social Bots Research

论文链接&#xff1a; https://arxiv.org/pdf/2303.17251 目录 摘要: Introduction Methodological issues Information leakage Cherry-picking&#xff08;采摘樱桃&#xff09; Straw-man methodology &#xff08;稻草人&#xff09; Data biases Conceptual issu…

基于ssm+vue+uniapp的智能停车场管理系统小程序

开发语言&#xff1a;Java框架&#xff1a;ssmuniappJDK版本&#xff1a;JDK1.8服务器&#xff1a;tomcat7数据库&#xff1a;mysql 5.7&#xff08;一定要5.7版本&#xff09;数据库工具&#xff1a;Navicat11开发软件&#xff1a;eclipse/myeclipse/ideaMaven包&#xff1a;M…

vue2基础系列教程之todo的实现及面试高频问题

关键知识点 v2里面&#xff0c;当在同一个元素或组件上同时使用v-for和v-if,v-for的权限高于v-if v-show和v-if的区别主要有 v-if是惰性的&#xff0c;v-show是及时的v-if值为false时&#xff0c;不会生成dom,v-show不管值是true或false,都会生成dom,修改的是dom的display属性…

传知代码-KAN卷积:医学图像分割新前沿

代码以及视频讲解 本文所涉及所有资源均在传知代码平台可获取 概述 在本文中深入探讨KAN卷积在医学图像分割领域的创新应用&#xff0c;特别是通过引入Tokenized KAN Block&#xff08;Tok Kan&#xff09;这一突破性设计&#xff0c;将深度学习中的图像分割技术推向了新的高…

轮转数组 给定一个整数数组 nums,将数组中的元素向右轮转 k 个位置,其中 k 是非负数

示例 1: 输入: nums [1,2,3,4,5,6,7], k 3 输出: [5,6,7,1,2,3,4] 解释: 向右轮转 1 步: [7,1,2,3,4,5,6]向右轮转 2 步: [6,7,1,2,3,4,5] 向右轮转 3 步: [5,6,7,1,2,3,4]示例 2: 输入&#xff1a;nums [-1,-100,3,99], k 2 输出&#xff1a;[3,99,-1,-100] 解释: 向右…

Halo 开发者指南——项目运行、构建

准备工作 环境要求 OpenJDK 17 LTSNode.js 20 LTSpnpm 9IntelliJ IDEAGitDocker&#xff08;可选&#xff09; 名词解释 工作目录 指 Halo 所依赖的工作目录&#xff0c;在 Halo 运行的时候会在系统当前用户目录下产生一个 halo-next 的文件夹&#xff0c;绝对路径为 ~/ha…

通过LiveGBS实现安防监控摄像头GB28181转成WebRTC流实现web浏览器网页无插件低延迟直播...

目录 1、WebRTC超低延时直播2、WebRTC延时对比3、LiveGBS的低延时的WebRTC流4、分屏页面如何选择默认播放流5、无法播放Webrtc6、搭建GB28181视频直播平台 1、WebRTC超低延时直播 需要低延时的视频流监控播放&#xff0c;之前可以用rtmp的低延时播放(1秒左右)&#xff0c;随着浏…

腾讯百度阿里华为常见算法面试题TOP100(4):双指针、哈希、滑动窗口

之前总结过字节跳动TOP50算法面试题&#xff1a; 字节跳动常见算法面试题top50整理_沉迷单车的追风少年-CSDN博客_字节算法面试题 目录 双指针 42.接雨水 283.移动零 11.盛最多水的容器 15.三数之和 哈希 1. 两数之和 49.字母异位词分组 128.最长连续序列 滑动窗…

GUI编程13:JDialog弹窗

视频链接&#xff1a;15、JDialog弹窗_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1DJ411B75F?p15&vd_sourceb5775c3a4ea16a5306db9c7c1c1486b5 package com.yundait.lesson04;import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; im…

计算机网络27、28——Linux命令1、2

1、虚拟机网络前方路径内容 用户名机器名&#xff1a;/$ $表示普通用户&#xff0c;#表示root用户 2、Linux不分盘&#xff0c;都是绝对路径 /表示根目录&#xff0c;表示计算机文件夹下 ~是当前用户的家&#xff0c;表示home文件夹下自己的文件夹 3、bin文件夹下的是可执…

书生大模型全链路开源体系,学习

优点 书生浦语开源大模型&#xff0c;是一个开源的大模型&#xff0c;大家可以一起学习 还有配套的教学视频&#xff0c;很快就能上手&#xff0c;而且还奖励算力&#xff0c;可以直接训练&#xff0c;讨论学习&#xff0c;非常nice。 教学视频 书生浦语大模型全链路开源开…

Qt实现登录界面

本文基于Qt实现一个简单的登录界面&#xff0c;主要使用到Widget、button、edit等控件&#xff0c;基于自定义的信号槽实现界面的跳转&#xff0c;使用绘图设备添加背景图等。 1. 创建主界面 设计主界面的样式&#xff0c;并添加相关的控件。如下显示&#xff1a; 代码如下&…

Android Tools | 如何使用Draw.io助力Android开发:从UI设计到流程优化

Android Tools | 如何使用Draw.io助力Android开发&#xff1a;从UI设计到流程优化 1. 引言 在Android开发中&#xff0c;视觉化设计与流程管理至关重要。虽然开发工具如Android Studio强大&#xff0c;但它并不适用于所有设计场景。Draw.io是一款免费的在线绘图工具&#xff…