CSS显示模式

news2024/12/25 9:35:40

目录

CSS显示模式简介

CSS显示模式的分类

块元素

行元素

行内块元素

元素显示模式的转换

使块内文字垂直居中的方法

设计简单小米侧边栏(实践)


CSS显示模式简介

元素显示模式就是元素(标签)以什么方式进行显示,比如<div></div>自己占一行,比如一行可以放多个<span></span>。当网页的标签非常多,在不同地方会用到不同类型的标签,了解他们的特点可以更好的布局网页

CSS显示模式的分类

块元素

常见的块元素有以下标签:

标题标签
<h1></h1>~<h6></h6>

段落标签
<p></p>

<div></div>

无序列表标签
<ul>
    <li></li>
    <li></li>
</ul>
有序列表标签
<ol>
    <li></li>
    <li></li>
</ol>

其中,<div></div>是典型的块元素标签

块元素标签的特点:

  • 每一个标签独占一行。
  • 高度,宽度、外边距以及内边距都可以控制。
  • 宽度默认是容器(父级宽度)的100%。
  • 一个容器及盒子,里面可以放行内或者块级元素

📌

文字类的元素内不能放块级元素,例如<p></p>中不可以放块级元素,特别是不能放<div> </div>同理, <h1></h1>~<h6></h6>等都是文字类块级标签,里面也不能放其他块级元素

示例代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>块元素</title>
    <style>
        div{
            width: 200px;
            height: 200px;
            background-color: red;
        }
        h1 {
            background-color: blue;
        }
    </style>
</head>
<body>
    <h1>这是一段内容</h1>
    <div>这是一段内容</div>
</body>
</html>

效果如下:

如果在文字类标签中放入可以放置任何内容的块元素则会出现问题

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>块元素</title>
    <style>
        div{
            width: 200px;
            height: 200px;
            background-color: red;
        }
        h1 {
            background-color: blue;
        }
    </style>
</head>
<body>
    <h1>这是一段内容</h1>
    <p><div>这是一段内容</div></p>
    <div>这是一段内容</div>
</body>
</html>

问题如下:

行元素

常见的行元素标签:

链接标签
<a></a>

粗体标签
<strong></strong>
<b></b>

斜体标签
<em></em>

删除线标签
<del></del>
<s></s>

下划线标签
<ins></ins>
<u></u>

<span></span>

<span></span>标签是最典型的行内元素。有的地方也将行内元素称为内联元素

行内元素的特点:

  • 相邻行内元素在一行上,一行可以显示多个
  • 高、宽直接设置是无效的
  • 默认宽度就是它本身内容的宽度
  • 行内元素只能容纳文本或其他行内元素

📌

链接里面不能再放链接,特殊情况链接 <a></a>里面可以放块级元素,但是给 <a></a> 转换一下块级模式最安全

示例代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>行元素</title>
    <style>
        span {
            width: 200px;
            height: 200px;
            background-color: red;
        }
    </style>
</head>
<body>
    <span>这是一段内容</span>
</body>
</html>

效果如下:

行内块元素

常见的行内块标签:

<img />
<input />
<td></td>

行内块元素同时具有块元素和行内元素的特点:

  • 和相邻行内元素(或者行内块元素)在一行上,但是他们之间会有空白缝隙。
  • 一行可以显示多个行内块元素(行内元素特点)。
  • 默认宽度就是它本身内容的宽度(行内元素特点)。
  • 高度,行高、外边距以及内边距都可以控制(块级元素特点)。

元素显示模式的转换

即一个模式的元素需要另外一种模式的特性,比如想要增加链接 <a></a>的触发范围

转换方式:

  • 转换为块元素:display: block;
  • 转换为行内元素:display: inline;
  • 转换为行内块:display: inline-block;
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>行内块元素</title>
    <style>
        /* 将a标签转换为行内块元素 */
        a {
            display: inline-block;
            width: 200px;
            height: 200px;
            background-color: red;
        }
    </style>
</head>
<body>
    <a href="#">链接</a>
    <a href="#">链接</a>
</body>
</html>

效果如下:

使块内文字垂直居中的方法

在CSS中没有直接对文字设置垂直居中的属性,但是可以采用行高的设置来解决这个问题

当行高与当前块高度相同时,文字会被上下两个间隙挤在块的中间

同理,当行高大于当前块高度时,则此时因为上下间隙均等分布,所以上面的间隙会占据大部分的块空间,从而使文字向下移动,反之当行高小于当前块高度时,使文字向上移动

设计简单小米侧边栏(实践)

参考图如下:

参考小米商城链接:小米商城

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>简单小米侧边栏</title>
    <style>
        a {
            /* 设置每一个链接的大小,前提是为块元素 */
            display: block;
            width: 237px;
            height: 50px;
            /* 设置每一个链接的背景颜色 */
            background-color: rgb(80, 85, 92);
            /* 设置每一个链接的文字缩进 */
            text-indent: 2em;
            /* 设置每一个链接文字的行高,使内容文本垂直居中 */
            line-height: 50px;
        }

        /* 设置链接默认显示效果 */
        a:link {
            color: whitesmoke;
            text-decoration: none;
        }
        /* 设置当鼠标悬停时链接的效果 */
        a:hover {
            background-color: rgb(205, 103, 0);
        }
    </style>
</head>
<body>
        <a href="#">手机</a>
        <a href="#">电视</a>
        <a href="#">家电</a>
        <a href="#">笔记本 平板</a>
        <a href="#">出行 穿戴</a>
        <a href="#">耳机 音箱</a>
        <a href="#">健康 儿童</a>
        <a href="#">生活 箱包</a>
        <a href="#">智能 路由器</a>
        <a href="#">电源 配件</a>
</body>
</html>

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

在 Linux 中复制文件和目录

目录 ⛳️推荐 前言 在 Linux 命令行中复制文件 将文件复制到另一个目录 复制文件但重命名 将多个文件复制到另一个位置 复制时处理重复文件 交互式复制文件 在 Linux 命令行中复制目录 仅复制目录的内容&#xff08;不是目录&#xff09; 复制多个目录 测试你的知…

顺序表leetcode刷题(C语言版)

一.移除元素 对于本题&#xff0c;共有两种解法&#xff1a; 思路一&#xff1a;创建新的数组&#xff0c;遍历原数组&#xff0c;将不为value的值放到新数组中&#xff0c;但本题不允许使用新的数组&#xff0c;因此该方法不行 思路二&#xff1a;使用快慢指针&#xff0c;原数…

用Cmake编译程序时,链接到FFmpeg库

用Cmake编译程序时&#xff0c;链接到FFmpeg库 一、前言 可喜可贺&#xff0c;折腾了一晚上终于把这个勾八链接成功了&#xff0c;已经要吐了。看到下面控制台的输出&#xff0c;吾心甚慰呀&#x1f62d; [100%] Linking CXX executable rknn_yolov5_demo [100%] Built targe…

[数据结构]——排序——插入排序

目录 ​编辑 1 .插入排序 1.基本思想&#xff1a; 2.直接插入排序&#xff1a; ​编辑 1.代码实现 2.直接插入排序的特性总结&#xff1a; 3.希尔排序( 缩小增量排序 ) 1.预排序 2.预排序代码 3.希尔排序代码 4.希尔排序的特性总结&#xff1a; 1 .插入排序 1.基本思…

C语言联合体详解

下午好诶&#xff0c;今天小眼神给大家带来一篇C语言联合体详解的文章~ 目录 联合体 1. 联合体类型的声明 2. 联合体的特点 代码一&#xff1a; 代码二&#xff1a; 3. 相同成员的结构体和联合体对比 ​编辑4. 联合体大小的计算 5. 联合体的优点 联合体 1. 联合体…

电脑显示缺失d3dx9_43.dll文件如何修复?分享5种详细的修复方法

在日常使用计算机的过程中&#xff0c;当我们尝试启动某个软件或运行一款游戏时&#xff0c;系统可能会弹出一个错误提示信息&#xff0c;明确指出“d3dx9_43.dll文件缺失”。这个情况表明&#xff0c;作为Windows操作系统中不可或缺的一部分&#xff0c;DirectX 9.0c的一个关键…

数电期末复习(二)逻辑代数基础

这里写目录标题 2.1 二值逻辑变量与基本逻辑运算2.1.1 与运算2.1.2 或运算2.1.3 非运算2.1.4 常用复合逻辑运算 2.2 逻辑函数的建立及其表示方法2.2.1 真值表表示2.2.2 逻辑函数表达式表示2.2.3 逻辑图表示方法2.2.4 波形图表示方法 2.3 逻辑代数2.3.1 逻辑代数的基本定律和恒等…

MySQL数据库基础知识(数据库/表的基础操作 + 基本类型)

文章目录 数据库的操作显示当前数据库服务器上有哪些数据库创建数据库使用数据库删除数据库 常用数据类型数值类型字符串类型日期类型小结(主要使用) 表的操作创建表查看表结构列出当前数据库的表删除表 注释MySQL创建的数据库/表存储在系统的位置 数据库的操作 输入的单词之间…

算法入门——二分查找

目录 1、二分模板 2、习题 1.704.二分查找 2.35.搜索插入位置 3.744. 寻找比目标字母大的最小字母 4.69. x 的平方根 5.1351. 统计有序矩阵中的负数 6.74. 搜索二维矩阵 7.34. 在排序数组中查找元素的第一个和最后一个位置 8.33. 搜索旋转排序数组 9.153. 寻找旋转排…

政企版 WPS Pro 专业版注册安装教程

政企版 WPS Pro 专业版安装及激活步骤 第 1 步&#xff1a;下载压缩包&#xff08;内含注册码&#xff09;【无解压密码】。 第 2 步&#xff1a;解压缩后&#xff0c;运行 exe 文件&#xff0c;默认步骤安装即可。 第 3 步&#xff1a;安装完成后&#xff0c;新建一个 Word …

【ThinkPHP框架教程·Part-04】URL访问模式

文章目录 一、URL解析1、URL解析格式2、URL解析示例说明3、设置URL重写 二&#xff0e;URL 兼容模式 本章节我们来简单了解一下 ThinkPHP6.0 的 URL 访问模式&#xff0c;解析它的访问方法。 一、URL解析 ThinkPHP 框架非常多的操作都是通过 URL 来实现的。 1、URL解析格式 由…

利用RFID无线射频技术,实现商品防伪和溯源信息管理

近几年来&#xff0c;伴随着信息化产业的快速发展&#xff0c;企业对于产品在生产、流通、分销和零售等环节的实时跟踪和监管的需求日趋强烈。同时企业在经营过程中不可避免地要在不同区域实行差异化的经销商拿货价格&#xff0c;从而导致窜货现象时有发 生&#xff0c;为企业带…

二叉树链式结构的实现-二叉树的前序 中序 后序 层序遍历

一、二叉树的结构了解 二叉树是&#xff1a; 空树非空&#xff1a;根节点&#xff0c;根节点的左子树、根节点的右子树组成的。 前序&#xff1a; 根 左子树 右子树 --》先根 中序&#xff1a;左子树 根 右子树 --》中根 后序&#xff1a;左子树 右子树 根 --》后根 层序&…

命理八字之答案之书前端uniapp效果实现

#uniapp# #答案之书# 不讲废话&#xff0c;先上截图 <div class"padding"><div class"flex align-center justify-center" style"padding-top:100px;"><div class"radarContainer"><div id"radarBox"…

C#医学实验室/检验信息管理系统(LIS系统)源码

目录 检验系统的总体目标 LIS主要包括以下功能&#xff1a; LIS是集&#xff1a;申请、采样、核收、计费、检验、审核、发布、质控、耗材控制等检验科工作为一体的信息管理系统。LIS系统不仅是自动接收检验数据&#xff0c;打印检验报告&#xff0c;系统保存检验信息的工具&a…

关于Android绘制这一遍就够了

Android绘制基础 Android平台提供了一套完整的UI框架&#xff0c;其中包括了绘制组件和绘制API。在Android中&#xff0c;绘制主要涉及到两个核心概念&#xff1a;Canvas和Paint。 Canvas Canvas是Android中的一个类&#xff0c;它代表了绘图的画布。你可以在这个画布上进行…

CAS Client使用以及执行原理

CAS Client使用以及执行原理 流程介绍 CAS Client是利用Java Web中的Filter进行实现认证功能&#xff0c;客户端对CAS Server的认证流程分为以下步骤&#xff1a; 访问CAS Client服务 由于当前session中未检测到认证信息&#xff0c;会重定向到CAS Server地址进行认证 在CA…

11.Ribbon负载均衡策略及修改

ZoneAvoidanceRule 默认使用的规则 修改规则 第一种方式&#xff1a;定义IRule的Bean,作用于全局。 SpringBootApplication MapperScan("com.xkj.org.mapper") public class OrderApplication {public static void main(String[] args) {SpringApplication.run(Ord…

设计模式——2_A 访问者(Visitor)

文章目录 定义图纸一个例子&#xff1a;如何给好奇宝宝提供他想知道的内容菜单、菜品和配方Menu(菜单) & Cuisine(菜品)Material(物料、食材) 产地、有机蔬菜和卡路里Cuisine & Material 访问者VisitorCuisine & Material 碎碎念访问者和双分派访问者和代理写在最后…

C#基础|StringBuilder字符串如何高效处理。

哈喽&#xff0c;你好&#xff0c;我是雷工。 字符串处理在C#程序开发中是使用频率比较高的&#xff0c;但常规的字符串处理方式对内存占用比较多&#xff0c;为了优化内存&#xff0c;减少不必要的内存浪费&#xff0c;引入了StringBuilder类。 下面学习下StringBuilder类的使…