第十五讲_css水平垂直居中的技巧

css水平垂直居中的技巧

  • 1. 水平垂直居中(场景一)
  • 2. 水平垂直居中(场景二)
  • 3. 水平垂直居中(场景三)
  • 4. 水平垂直居中(场景四)

1. 水平垂直居中(场景一)

条件:一个固定大小的div,包含一个固定大小的div

效果:让内部的div位于外部div水平垂直居中的位置,且内部的div文本水平垂直居中。

注意事项:父元素的第一个子元素margin塌陷的问题。

<html><style>.outer {height: 500px;width: 500px;background-color: brown;margin: 0 auto;/* 解决margin塌塌陷问题 */overflow: hidden;}.inner {height: 100px;width: 100px;background-color: aqua;/* 设置该元素在父元素中水平居中 */margin: 0 auto;margin-top: 200px;/* 设置该元素中的文本水平居中 */text-align: center;/* 设置该元素中的文本垂直居中 */line-height: 100px;}</style><div class="outer"><div class="inner">hello</div></div>
</html>

在这里插入图片描述

2. 水平垂直居中(场景二)

条件:一个固定大小的div,包含一个行内元素、行内块元素。

效果:让内部的行内元素、行内块元素都位于外部div水平垂直居中的位置。

注意事项:基线的影响。

<html><style>.outer {height: 500px;width: 500px;background-color: brown;/* 设置内部文本或行内元素水平居中 */text-align: center;/* 设置内部文本或行内元素垂直居中 */line-height: 500px;/* 为了让其子元素正好垂直居中,没有偏差 */font-size: 0;}.inner {background-color: aqua;/* 行内元素的基线相对于该元素所在行的基线的垂直对齐 */vertical-align: middle;font-size: 20px;}img {height: 100px;width: 100px;vertical-align: middle;}</style><div class="outer"><span class="inner">hello</span><imgsrc="https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png"/></div>
</html>

在这里插入图片描述

3. 水平垂直居中(场景三)

条件:一个伸缩容器。

效果:让伸缩项目在伸缩容器的水平垂直居中位置。

实现方式一:

<html><style>.div1 {width: 500px;height: 500px;background-color: blueviolet;/* 设置为伸缩容器 */display: flex;/* 主轴上居中对齐 */justify-content: center;/* 侧轴上居中对齐 */align-items: center;}.div2 {width: 200px;height: 200px;background-color: blue;}</style><div class="div1"><div class="div2"></div></div>
</html>

实现方式二:

<html><style>.outer {width: 500px;height: 500px;background-color: blueviolet;/* 设置为伸缩容器 */display: flex;}.inner {width: 200px;height: 200px;background-color: blue;/* 设置margin为auto,会让伸缩项目水平垂直居中 */margin: auto;}</style><div class="outer"><div class="inner"></div></div>
</html>

在这里插入图片描述

4. 水平垂直居中(场景四)

条件:一个固定大小的div

效果:让div在视口的水平垂直居中位置。

注意事项:视口的大小不固定。

<html><style>body {/* 设置body的高度为视口的高度 */height: 100vh;/* 设置为伸缩容器 */display: flex;}.div1 {width: 500px;height: 500px;background-color: brown;/* 垂直水平居中父元素 */margin: auto;}</style><div class="div1"></div>
</html>

在这里插入图片描述

代码中vh单位,是相对于视口高度的百分比,更多长度单位介绍可以参考另一篇博文:长度单位介绍

ps:运行代码,无论怎么调整视口的大小,红色块始终位于视口的水平垂直居中的位置。

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

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

相关文章

c语言for循环和水仙花

c语言for循环和水仙花 c语言for循环和水仙花 c语言for循环和水仙花一、for循环语句格式二、for循环案例水仙花 一、for循环语句格式 for(初始值&#xff1b;表达式&#xff1b;表达式) { 代码 }int main() {for (int i 0; i < 10; i){printf("%d\n", i);} }二、f…

C语言为什么会发⽣数据溢出?如何避免数据溢出?

一、问题 有以下程序&#xff1a;#include <stdio.h> int main() {int i, sum; /*声明变量 */i 2147483647; /*定义变量*/sum i 1; /*变量值加1*/printf("%d,%d", i, sum); /*输出结果*/return 0; }运⾏后 sum 的结果是什么&#xff1f; 二、解答 1、分析…

财政局运维管理平台应用解决方案

随着信息化建设的不断深入&#xff0c;财政局在IT运维中面临的问题也日益凸显。为了解决这些问题&#xff0c;本文将结合财政局的网络和IT基础建设现状&#xff0c;探讨如何选择合适的运维管理平台&#xff0c;以满足财政局的管理需求&#xff0c;并体现个性化需求。 一、财政…

分销商城多端uniapp 可编译5端 - 等级提现额度

等级提现额度 等级提现额度是一种常见的财务管理策略&#xff0c;通常用于在线平台、金融服务或游戏中&#xff0c;用于控制不同等级用户的提现限额。这样的机制有助于平台管理资金流动性&#xff0c;防范欺诈&#xff0c;并鼓励用户提升他们的活跃度或忠诚度。以下是一个简单的…

uniapp css 横向3个按钮 选中变色

<view class"uni-flex uni-row" style"text-align: center;line-height: 30px;" ><view class"itembtn" tabindex"1"> 选中变色1 </view><view class"itembtn" tabindex"2"> 选中变色2 &…

在商城里边怎么做分销功能_微信小程序商城如何开展分销

一、开篇引子 在数字化浪潮的推动下&#xff0c;商城已不再是一个单纯的购物场所&#xff0c;而是一个集购物、社交、娱乐为一体的多元化平台。在这个竞争激烈的市场环境中&#xff0c;如何让自己的商城脱颖而出&#xff0c;成为众多商家关注的焦点。而分销功能的引入&#xf…

uniapp一键换色

需求 : 在我们现有项目基础上, 把原来的颜色替换成另一个颜色, 同时需要为下一个项目预留出来随时更换主题色, 实现一键换色 实现 : 1. 介绍 兼容不同项目对主题色及图标的需求 主要通过以下对css颜色和icon主题色图标两个模块的切换 scss/less的css变量config/index.js中的…

利用海外動態IP代理開展市場調研

我們在進行市場調研的時候&#xff0c;不管是為了瞭解競品動態&#xff0c;還是為了獲取不同地區的消費者回饋&#xff0c;都需要克服一個難題&#xff0c;那就是地理限制。例如&#xff0c;我們無法直接訪問某些地區的網站&#xff0c;或者無法看到其他地區的搜索結果。這時候…

【面试突击】计算机网络面试实战(下)

&#x1f308;&#x1f308;&#x1f308;&#x1f308;&#x1f308;&#x1f308;&#x1f308;&#x1f308; 欢迎关注公众号&#xff08;通过文章导读关注&#xff1a;【11来了】&#xff09;&#xff0c;及时收到 AI 前沿项目工具及新技术 的推送 发送 资料 可领取 深入理…

Qt下载http文件

这是一个有问题的版本&#xff1a; class download_file :public QObject{Q_OBJECT; public:download_file(QString url, QString path);void sendRequest(); public slots:void requestFinished(QNetworkReply* reply); protected:QNetworkAccessManager* httpMgr; private:…

【LeetCode-53】最大子数组和(贪心动归)

LeetCode53.最大子数组和 力扣题目链接: https://leetcode.cn/problems/maximum-subarray/description/ 给定一个整数数组 nums &#xff0c;找到一个具有最大和的连续子数组&#xff08;子数组最少包含一个元素&#xff09;&#xff0c;返回其最大和。 示例: 输入: [-2,1,…

第一篇:node的背景及版本的检查

&#x1f3ac; 江城开朗的豌豆&#xff1a;个人主页 &#x1f525; 个人专栏 :《 VUE 》 《 javaScript 》 &#x1f4dd; 个人网站 :《 江城开朗的豌豆&#x1fadb; 》 ⛺️ 生活的理想&#xff0c;就是为了理想的生活 ! 前言 Node.js 是一个基于 Chrome V8 JavaScript 引擎…

Linux第23步_安装windows下的STM32CubeProgrammer软件和安装 DFU驱动程序

STM32CubeProgrammer软件是通过USB3.0接口烧写系统软件。 STM32CubeProgrammer需要java运行环境&#xff0c;因此需要安装JAVA软件。 Java 运行环境版本必须是 V1.7 及以上&#xff0c;一定要用 64位的&#xff0c;和win系统一致&#xff0c;否则使用 STM32CubeProgrammer烧…

微信怎么申请小程序商城?一步步教你完成

随着移动互联网的发展&#xff0c;越来越多的企业和个人开始关注微信小程序。微信小程序是一种不需要下载安装即可使用的应用&#xff0c;它实现了应用“触手可及”的梦想&#xff0c;用户扫一扫或者搜一下就能打开应用。其中&#xff0c;小程序商城因其便捷性和实用性&#xf…

吸嘴旋转对位贴合

背景&#xff1a;高精度贴片机需要在上看相机视觉定位芯片&#xff0c;芯片准确的贴合到leadframe里面。 问题&#xff1a;首先相机手眼标定后&#xff0c;已知视觉相机给出的芯片几何中心位置A1(x1,y1)&#xff0c;角度θ1&#xff0c;吸嘴几何中心的位置A2&#xff08;x2&am…

Embedding:数据的奇妙之变

在深度学习的领域&#xff0c;Embedding是连接符号与连续的一座桥梁。它通过将高维离散数据映射到低维连续向量空间&#xff0c;为大模型提供了更好的处理能力。 在这一部分&#xff0c;我们将深入研究Embedding的基本概念、作用以及在深度学习中的广泛应用。 一、向量Embedd…

如何一台电脑操作两个adb 设备

1.首先使用 adb devies 命令 2.然后使用 adb -s 上面的返回的id号 shell 进入对应的开发板

机器学习:自然语言处理介绍

机器学习在自然语言处理&#xff08;NLP&#xff09;领域扮演着关键的角色&#xff0c;它利用算法和统计模型来处理和理解人类语言。以下是一些与机器学习和自然语言处理相关的关键概念和技术&#xff1a; 文本分类&#xff1a; 机器学习可以用于对文本进行分类&#xff0c;例如…

matlab/simulink风电光伏储能虚拟同步机VSG下垂控制虚拟惯量控制,光伏变压减载控制一次调频二次调频研究,储能下垂控制SOC

非无穷大系统&#xff01; 第一个介绍风光储VSG算例研究。 其中风机采用虚拟惯性控制&#xff0c;下垂控制&#xff0c;网侧采用VSG虚拟同步机控制。储能下垂控制。 上述结果为整个系统的仿真波形&#xff0c;包括频率&#xff0c;pmsg永磁风机出力&#xff0c;储能出力&…

Python 使用类实现装饰器

一、基本原理 使用类实现装饰器的基本原理: 定义一个类&#xff0c;__init__ 方法用于初始化装饰器的状态&#xff0c; __call__ 方法用于定义在调用被装饰函数时所执行的逻辑。通过类创建一个可调用对象&#xff08;类的实例&#xff09;&#xff0c;该对象在被调用时执行 _…