css:元素居中整理水平居中、垂直居中、水平垂直居中

news2024/11/25 18:46:27

目录

    • 1、水平居中
      • 1.1、行内元素
      • 1.2、块级元素
    • 2、垂直居中
      • 2.1、单行文字
      • 2.2、多行文字
      • 2.3、图片垂直居中
    • 3、水平垂直居中
    • 参考文章

1、水平居中

1.1、行内元素

行内元素(比如文字,span,图片等)的水平居中,其父元素中设置

text-align: center;

示例

<style>
   body {
     background-color: #eeeeee;
   }
  
  .box {
    background-color: green;
    color: #fff;
    margin-top: 20px;
  }

  .box--center {
    text-align: center;
  }
</style>

<div class="box">两个黄鹂鸣翠柳,一行白鹭上青天</div>

<div class="box box--center">两个黄鹂鸣翠柳,一行白鹭上青天</div>

效果
在这里插入图片描述

1.2、块级元素

块级元素,比如 div,其默认宽度是100%。给定一个宽度的时候,可以居中对齐

width: 50%;
margin: 0 auto;

示例

<style>
    body {
    background-color: #eeeeee;
    }

    .box {
    background-color: green;
    height: 50px;
    }

    .box--center {
    width: 50%;
    margin: 0 auto;
    margin-top: 20px;
    }
    
</style>

<div class="box"></div>

<div class="box box--center"></div>

实现效果
在这里插入图片描述

2、垂直居中

2.1、单行文字

对于单行文字居中,可以设置父元素的行高来实现,将其行高与元素高度设置为相同的值即可:

height: 50px;
line-height: 50px;

示例

<style>
    body {
        background-color: #eeeeee;
    }

    .box {
        background-color: green;
        color: #fff;
        margin-top: 20px;
        height: 50px;
    }

    .box--center {
        line-height: 50px;
    }
</style>

<div class="box">两个黄鹂鸣翠柳,一行白鹭上青天</div>

<div class="box box--center">两个黄鹂鸣翠柳,一行白鹭上青天</div>

在这里插入图片描述

2.2、多行文字

也适用于单行文字、行内元素

height: 200px;
display:table-cell;
vertical-align:middle;

示例

<style>
 body {
    background-color: #eeeeee;
    display: flex;
  }

  .box {
    background-color: green;
    color: #fff;
    height: 200px;
    width: 130px;
  }

  .box--center {
    display: table-cell;
    vertical-align: middle;
  }

  .box-wrap {
    margin-left: 20px;
  }
</style>

<div class="box">两个黄鹂鸣翠柳,一行白鹭上青天。</div>

<div class="box-wrap">
  <div class="box box--center">两个黄鹂鸣翠柳,一行白鹭上青天。</div>
</div>

在这里插入图片描述

2.3、图片垂直居中

上面的方法也可以让图片垂直居中

display: table-cell;
vertical-align: middle;

示例

<style>
  body {
    background-color: #eeeeee;
    display: flex;
  }

  .box {
    background-color: green;
    color: #fff;
    height: 200px;
    width: 200px;
  }

  .box--center {
    display: table-cell;
    vertical-align: middle;
  }

  .box-wrap {
    margin-left: 20px;
    color: #fff;
    position: relative;
  }

  .image {
    width: 192px;
    height: 108px;
    vertical-align: middle;
  }

  .label {
    position: absolute;
    right: 0;
    top: 0;
    background-color: pink;
    padding: 0 4px;
  }
</style>

<div class="box-wrap">
  <div class="box">
    <img
      class="image"
      src="https://cn.bing.com/th?id=OHR.ViennaAutumn_ZH-CN7011999199_1920x1080.webp"
      alt=""
    />
  </div>
  <div class="label">box</div>
</div>

<div class="box-wrap">
  <div class="box box--center">
    <img
      class="image"
      src="https://cn.bing.com/th?id=OHR.ViennaAutumn_ZH-CN7011999199_1920x1080.webp"
      alt=""
    />
    <div class="label">box--center</div>
  </div>
</div>

在这里插入图片描述

3、水平垂直居中

使用绝对定位实现:子绝父相(子元素绝对定位,父元素相对定位)

  .box-wrap--center {
    position: relative;
  }

  .box-wrap--center .box {
    position: absolute;
    left: 50%; /* x轴方向相对父元素的宽移动 50% */
    top: 50%; /* y轴方向相对父元素的高移动 50% */
    transform: translate(-50%, -50%); /* x轴、y轴方向相对自身元素的宽、高移动 -50% */
  }

示例

<style>
  body {
    background-color: #eeeeee;
    display: flex;
  }

  .box-wrap {
    height: 300px;
    width: 300px;
    background-color: green;

    margin-right: 20px;
  }

  .box {
    background-color: pink;
    height: 100px;
    width: 100px;
  }

  .box-wrap--center {
    position: relative;
  }

  .box-wrap--center .box {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
  }
</style>

<div class="box-wrap">
  <div class="box"></div>
</div>

<div class="box-wrap box-wrap--center">
  <div class="box "></div>
</div>

在这里插入图片描述

参考文章

  1. 前端开发中的各种居中问题,小小总结一下

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

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

相关文章

GDPU 数据结构 天码行空8

实验八 二叉树的建立及遍历应用 一、【实验目的】 1、掌握二叉树的建立方法 2、掌握二叉树遍历的基本方法&#xff08;前序、中序、后序&#xff09; 3、掌握递归二叉树遍历算法的应用 二、【实验内容】 1.构造一棵二叉树,树的形态如下图(亦见附件)所示&#xff0c;打印出先…

PHP foreach 循环跳过本次循环

$a [[id>1],[id>2],[id>3],[id>4],[id>5],[id>6],[id>7],[id>18],];foreach($a as $v){if($v[id] 5){continue;}$b[] $v[id];}return show_data(,$b); 结果&#xff1a;

Java智慧工地源码(项目端+监管端+数据大屏+APP)

智慧工地系统功能介绍 【智慧工地PC项目端功能总览】 一.项目人员管理 包括&#xff1a;信息管理、信息采集、证件管理、考勤管理、考勤明细、工资管理、现场统计、WIFI教育、工种管理、分包商管理、班组管理、项目管理。 1.信息管理&#xff1a;头像、姓名、性别、身份证、…

“AI换脸诈骗”来势汹汹,三个层面科学应对……

当前&#xff0c;AI技术的广泛应用为社会公众提供了个性化智能化的信息服务&#xff0c;也给网络诈骗带来可乘之机&#xff0c;如不法分子通过面部替换语音合成等方式制作虚假图像、音频、视频仿冒他人身份实施诈骗、侵害消费者合法权益。你认为AI诈骗到底应该如何防范&#xf…

热点报告 | 健身人群抵抗入冬肥,Dirtyfit引领23秋冬潮流?

您是否曾有以下困惑&#xff1f;打开小红书首页推荐&#xff0c;似乎已经被算法教育成了成熟的信息茧房&#xff0c;想要找到下一个热点&#xff0c;又忧虑一叶以障目&#xff1b;看着搜索框热词&#xff0c;又担心无法掌握热词背后的话题命脉&#xff0c;难以在浮光掠影中寻找…

零基础成人英语哪里可以学,柯桥成人英语培训

写作中经常会用到“有利于”的表达&#xff0c;一说到“有利于”&#xff0c;大家最先想到的是 be good for 或者 benefit&#xff0c;很滥&#xff0c;很简单&#xff0c;没有亮点&#xff0c;写作中很难提分。 还有一点&#xff0c;英文写作中很忌讳相同的表达反复出现&…

成集云 | 项目管理系统集成金蝶云星空ERP | 解决方案

方案介绍 项目管理系统是项目的管理者应用专门管理项目的系统软件&#xff0c;在有限的资源约束下&#xff0c;运用系统的观点、方法和理论&#xff0c;对项目涉及的全部工作进行有效地管理。它从项目的投资决策开始到项目结束的全过程进行计划、组织、指挥、协调、控制和评价…

从“别人家的孩子”到创业失败:人生的起伏与自我救赎

在我们的生活中&#xff0c;常常会遇到这样一种人&#xff0c;他们从小优秀&#xff0c;备受瞩目&#xff0c;是那种“别人家的孩子”。他们一路走来&#xff0c;无论是在学业还是工作中&#xff0c;都表现得极为出色&#xff0c;让父母引以为傲。然而&#xff0c;人生并非总是…

CVE-2023-45852:Viessmann Vitogate远程代码执行漏洞复现【附POC】

文章目录 Viessmann Vitogate远程代码执行漏洞(CVE-2023-45852)复现0x01 前言0x02 漏洞描述0x03 影响版本0x04 漏洞环境0x05 漏洞复现1.访问漏洞环境2.构造POC3.复现 0x06 修复建议 Viessmann Vitogate远程代码执行漏洞(CVE-2023-45852)复现 0x01 前言 免责声明&#xff1a;请…

炫云客户端信用额度如何修改?

现在炫云新注册用户信用额度是100元&#xff0c;但是有人觉得信用额度太高了&#xff0c;想修改信用额度&#xff0c;不知道炫云的信用额度如何修改&#xff0c;今天就教大家如何修改炫云的信用额度。炫云的信用额度在炫云官网和客户端都可以修改。 我们先来看炫云官网如何修改…

跨境电商的地方风味:文化多样性的市场

在数字时代&#xff0c;世界已经变得更加紧密相连&#xff0c;跨越国界的电子商务已成为全球经济的一部分。随着跨境电商的兴起&#xff0c;不仅商品跨国流通&#xff0c;文化也以一种前所未有的方式融合。本文将探讨跨境电商如何推动文化多样性&#xff0c;以及这一市场的前景…

Redis 的另一个集群版之 Codis 集群

文章目录 一、概述二、Codis 组织架构图三、Codis 测试规划四、Codis 安装及配置4.1 安装 Codis4.2 启动 Codis Dashboard4.3 启动 Codis Proxy4.4 启动 Codis Server4.5 启动 Codis FE&#xff08;可选&#xff09; 五、Codis-FE 配置六、测试 Codis 服务 如果您对Redis的了解…

【借力打力】记一次由于堆栈信息不详细的错误排查方法,利用访问日志进行定位问题

【借力打力】记一次由于堆栈信息不详细的错误排查方法&#xff0c;利用访问日志进行定位问题 1&#xff0c;背景2&#xff0c;排查步骤2.1 调用方问题2.2 Nginx手段2.3 运维工具辅助2.4 嵌入tomcat日志记录 3&#xff0c;结果 1&#xff0c;背景 异常信息每隔50分钟显示一次&a…

FFmpeg——使用Canvas录制视频尚存问题的解决方案

个人简介 &#x1f440;个人主页&#xff1a; 前端杂货铺 &#x1f64b;‍♂️学习方向&#xff1a; 主攻前端方向&#xff0c;正逐渐往全干发展 &#x1f4c3;个人状态&#xff1a; 研发工程师&#xff0c;现效力于中国工业软件事业 &#x1f680;人生格言&#xff1a; 积跬步…

DELPHI安卓开发如何初始化frame 生成create方法

记住名字需要一样create 点击create这时按住ctrlshiftc 弹出以后就就完成frame的初始化create方法

Map和Set(JAVA)

本篇文章建议在了解了哈希表和二叉搜索树后食用更佳。 链接: 二叉搜索树 和 哈希表 (JAVA) Map和Set都是一种专门用来进行搜索的容器或者数据结构&#xff0c;其搜索的效率与其具体的实例化子类有关。 Map接口 Map是一个接口&#xff0c;不能直接实例化对象&#xff0c;如果…

kibana显示时间数据时的时区问题及时间显示格式设置

天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物。 每个人都有惰性&#xff0c;但不断学习是好好生活的根本&#xff0c;共勉&#xff01; 文章均为学习整理笔记&#xff0c;分享记录为主&#xff0c;如有错误请指正&#xff0c;共同学习进步。…

电源纹波示波器测试方法:示波器纹波测试步骤详解

示波器测试电源纹波的步骤 一、准备测试设备 测试之前选择一台示波器和合适的电压探头。探头有无源探头和有源探头两种&#xff0c;综合来讲一般选择衰减比例1:1的无源探头测量输出阻抗及频率较低的电源纹波。 二、连接电源 连接示波器探头和电源输出端&#xff0c;确保连接完好…

Kafka反序列化RCE漏洞(CVE-2023-34040)

漏洞描述 Spring Kafka 是 Spring Framework 生态系统中的一个模块&#xff0c;用于简化在 Spring 应用程序中集成 Apache Kafka 的过程&#xff0c;记录 (record) 指 Kafka 消息中的一条记录。 受影响版本中默认未对记录配置 ErrorHandlingDeserializer&#xff0c;当用户将…

PSP - 蛋白质-核酸复合物结构预测 RoseTTAFoldNA 算法框架 (Protein-RNA、Protein-DNA、RNA)

欢迎关注我的CSDN&#xff1a;https://spike.blog.csdn.net/ 本文地址&#xff1a;https://spike.blog.csdn.net/article/details/134208615 Paper: Accurate prediction of nucleic acid and protein-nucleic acid complexes using RoseTTAFoldNA GitHub: RoseTTAFold2NA 蛋白…