CSS布局对齐方式--水平居中、垂直居中

Html css水平居中+垂直居中+水平垂直居中的方法总结 (1)块级元素(如div):独占一行,不和其他元素在一起,可以设置宽和高;当没设置宽和高时,宽度和父级宽度一样,高度由内容的高度决定;当设置宽和高时,元素的宽高就是设置值,当内容超过宽高值时,元素宽高值也不变高,会溢出。(2)行级元素(如span):不会独占一行,和其它元素在一起,不可以设置宽和高,由里面的内容决定;设置的宽高无效。(3)行内块级元素(如img):不会独占一行,可以和其它元素在一起,可以设置宽和高;当没设置宽和高时,宽高有元素内容决定;当设置宽和高时,元素内容宽高为设置值。 阅读详情

一、水平居中

情况一:行内元素的水平居中

如果被设置的元素为文本、图片等行内元素时,在父元素 中设置text-align:center实现行内元素水平居中,将子元素的设置为display:inline-block,使子元素变成行内元素;

html

<div class="one">
  <div class="two">11111</div>
 </div>

css

.one{
   text-align: center;
   background-color: grey;
  }
  .two{
   display: inline-block;
   background-color: yellow;
  }

在这里插入图片描述

情况二:块状元素水平居中(不定定宽)

因为宽度不一定,所以我们不能通过限制宽度来限制他的弹性。
可以直接给补丁款的块级元素text-align:center;来实现,也可以给父级元素加text-align:center;来实现居中效果。
当不定宽元素的宽度不要占一行时,可以设置display:inline/inline-block(设置为行内元素或者行内块元素)。

display:block将元素显示为块级元素,从而可以更好地操控元素的宽高,以及内外边距,每一个块级元素都是从新的一行开始。

display : inline将元素显示为行内元素,高度,行高以及底边距不可改变,高度就是内容文字或者图片的宽度,不可以改变。多个相邻的行内元素排在同一行里,知道页面一行排列不下,才会换新的一行。

display:inline-block看上去值名inline-block是一个混合产物,实际上确是如此,将元素显示为行内块状元素,设置该属性后,其他的行内块级元素会排列在同一行。比如我们li元素一个inline-block,使其既有block的宽度高度特性,又有inline的同行特性,在同一行内有不同高度内容的元素时,通常要设置对齐方式如vertical-align: top;来使元素顶部对齐。

html

<div class="one">
  <ul>
   <li><a href="#">1</a></li>
   <li><a href="#">2</a></li>
   <li><a href="#">3</a></li>
  </ul>
 </div>

css

 div{
   text-align: center;
   background-color: beige;
  }
  div ul{
   list-style: none;
   margin: 0;
   padding: 0;
   display: inline-block;
  }
  div ul li{
   margin-right: 8px;
   display: inline-block;
  }

在这里插入图片描述

二、垂直居中

/
垂直居中的前提:
父元素是盒子容器且高度已经设定。

/

情况1.子元素是行内元素,高度是由其内容撑开的。

此时需要通过设定父元素的line-height为其高度来使得子元素垂直居中。
html

<div class="one">
   <span class="span">11111</span>
</div>

css

 .span{
  background-color: red;
  }
   .one{
   width: 200px;
   height: 300px;
   line-height: 2000%;
   border:2px solid #ccc;
  }

在这里插入图片描述

情况2.子元素是块级元素,但是子元素高度没有设定,在这种情况下,实际上是不知道子元素高度的,无法通过计算得到padding或者margin来调整。

此时,可以通过给父元素设定

display:table-cell; 
                  //让标签元素以表格单元格的形式呈现,使元素类似于td标签
vertical-align:middle;
		 //设置元素内容的垂直对齐方式

来解决。

display:table-cell 指让标签元素以【表格单元格】的形式呈现,使元素类似于td标签。IE8+及现代版本的浏览器都支持此属性,IE6/7不支持(可用其他方法实现类似效果)。同样,display:table-cell属性也会被float,position:absolute等属性破坏效果,应避免同时使用。

verical-align属性:
设置元素内容的垂直对齐方式
只对行内元素span生效,对块状文本样式p、div不起作用。

在本代码中,display:table-cell将块状元素div转化为表格单元格td的形式,就可以用verical-align属性了

html

<div class="one">
  <div class="two">11111</div>
 </div>

css

.two{
   background: green;
  }
  .one{
   width: 200px;
   height: 300px;
   border:2px solid #ccc;
   display: table-cell;
   vertical-align: middle;
  }

在这里插入图片描述

情况3.子元素是块状元素且高度已经设定

计算子元素margin-top或margin-bottom,计算方法为(父元素高度-子元素高度)/ 2;
html

<div class="one">
  <div class="two">11111</div>
 </div>

css

.one{
   width: 200px;
   height: 300px;
   border:2px solid #ccc;
  }
  .two{
   width: 100px;
   height: 100px;
   margin-top: 100px;
   background-color: lightblue;
  }

在这里插入图片描述

三、水平垂直居中

情况1:水平对齐+行高

text-align + line-height实现单行文本水平垂直居中
html

<div class="one">123</div>

css

.one{
   text-align: center;
   line-height: 100px;
   width: 200px;
   background-color: lightblue;
  }

在这里插入图片描述

情况2:水平+垂直对齐
1.在父元素设置text-align和vertical-align,并将父元素设置为table-cell元素,子元素设置为inline-block元素。

html

<div class="one">
  <div class="two">123</div>
 </div>

css

.one{
   width: 200px;
   height: 200px;
   display: table-cell;
   text-align: center;
   vertical-align: middle;
   background-color: grey;
  }
  .two{
   display: inline-block;
   background-color: red;
  }

text-align:设置元素内文本的水平对齐方式,只对块状区域起作用。可以在图片外部嵌套块状元素< div >< /div >
vertical-align:设置元素内容的垂直对齐方式,只对行内元素span生效,对块状文本样式p、div不起作用
在这里插入图片描述

2.若子元素是图像,可不使用table-cell,而是其父元素用行高代替高度,且字体大小设为0。子元素本身设置vertical-align:middle;

html

<div class="one">
  <img class="two" src="wow.jpg"/>
 </div>

css

.one{ 
   text-align: center;
   width: 200px;
   line-height: 100px;
   font-size: 0;
   background-color: grey;
  }
  .two{
   vertical-align: middle;
   width: 50%;
  }

在这里插入图片描述

CameraLink接口详解:从引脚定义到信号传输 本文详细解析了CameraLink接口的物理连接与信号传输机制。从MDR26连接器的引脚定义与镜像关系入手,深入讲解了BASE与MEDIUM模式下的信号映射、LVDS差分传输原理,并强调了屏蔽层处理与端接电阻等关键硬件设计细节。文章结合实战经验,提供了常见图像传输问题的排查思路,是工业视觉领域高速图像传输的实用指南。 阅读详情

相关推荐

数字蓝军智能体关键技术课题研究

本研究提出基于人工智能大模型技术构建智能数字蓝军智能体系统,旨在提升作战模拟推演的智能化水平。系统采用"大模型+小模型"混合架构,整合感知、决策、规划、学习等核心模块,实现动态、智能的作战方案生成。关键技术包括大模型与知识图谱融合、多智能体协同、战场态势数字化表示等。研究成果将形成可复用的垂直领域智能体框架,为军事训练提供智能化对抗平台。该系统不仅能模拟真实对手的决策行为,还能通过自我博弈持续进化,有效增强推演的真实性和对抗性。

weixin_49042442的博客 1549

细谈text-align: center

text-align: center的几个用处 1.概括 CSS参考手册上关于text-align:center的说明是text-align 属性规定元素中的文本的水平对齐方式。 该属性通过指定行框与哪个点对齐,从而设置块级元素内文本的水平对齐方式。 ...

qq_44742090的博客 1万+

Ribo测序翻译效率计算及可视化

本文介绍了一个计算翻译效率(TE)和分析转录-翻译相关性的生物信息学流程。首先通过Python脚本从标准化表达量矩阵(TPM/FPKM)计算TE值,该脚本自动匹配转录组(RNA)和翻译组(Ribo)样本进行比值运算。然后使用R语言进行相关性分析,通过ggplot2绘制样本间转录-翻译表达量的散点图,添加线性回归线和相关系数标注,支持PNG/PDF格式输出。整个流程实现了从原始数据处理到可视化分析的全过程。

Tiaoxiaobai的博客 553

CSS笔记(1)

text - align: center是一个 CSS 属性,用于将行内元素(如文本、内联元素、内联块元素)在其包含块(通常是父元素)中水平居中对齐。常见于对章节开头的第一个字母进行装饰,比如在一些书籍排版风格的网页中,将章节标题的第一个字母放大并设置特殊字体。,否则元素可能会占据整个父元素的宽度(块级元素默认行为),无法达到预期的居中效果。,内联元素默认在水平方向上从左到右依次排列,只要有足够的空间,它们就会在一行显示。属性时,它们会脱离正常的文档流,向左或向右排列,直到没有足够的空间。

huangCalm_7的博客 2279

【Verilog模块例化全解析:从入门到精通】

本文详细解析了Verilog模块例化的核心概念与方法。主要内容包括: 模块定义与例化的基本概念,强调模块例化会生成独立硬件电路; 两种端口连接方式:位置映射(按顺序连接)和名称映射(按端口名连接),推荐使用名称映射提高可读性; 参数化例化方法,通过parameter实现可配置模块设计; 多层模块嵌套的实战应用,展示复杂设计的层次化实现。 文章通过2位加法器等代码示例,对比分析了不同例化方式的优缺点,为硬件设计中的模块复用提供了实用指导。重点推荐名称映射和参数化设计方法,以提高代码可维护性和设计灵活性。

m0_58476824的博客 1328

【IPC】ONVIF Device Manager 测试工具

介绍onvif 协议测试工具

以实战经验介绍行业知识 1961

css元素如何居中

css元素如何居中

qq_42808052的博客 1284

MATLAB与图像处理(一):图像中结构张量的求法(Structure Tensor)

1.结构张量的作用:       能够区分图像中的平坦区域,边缘,角点; 2.图像中的结构张量的定义    1)是一个矩阵;    2)与图像的水平,垂直梯度有关,定义如下: 在MATLAB中,可以用如下语句求解:[Ix,Iy]=gradient(Image); 3)求出结构张量矩阵的行列式,和迹(矩阵对角线之和)   行列式:K=det(E);   迹:  

wenyusuran的专栏 5242

CSS中实现元素水平居中、垂直居中的6个方法(详解)

CSS中实现元素居中6个的方法、text-align、margin:auto、line-height、flex布局、position

xtcbql的博客 7万+

整理 钢琴 约翰·汤普森现代钢琴(大汤)

大汤

TS的博客 3999

ORB-SLAM3代码详解 - 第 18 篇 · Atlas 多地图系统、地图保存与全系统调优

会跑:理解三线程架构与数据流(01/08/10/13),能编译、配参、复现各数据集结果。会改:掌握相机模型抽象(05)、g2o 顶点与边(14)、预积分(15),能接入新传感器、新相机、新约束。会调:理解每个参数背后的物理含义与耦合(03/15/16/18),能针对自己的平台与场景做精度/实时/鲁棒的权衡。ORB-SLAM3 的价值不止于一个可用的 SLAM 系统,更在于它是一套工程化的几何状态估计模板:清晰的模块边界、可替换的相机/传感器抽象、紧耦合优化的标准范式。

PX4-SLAM-PNC 172

css3中四种让元素水平居中的方式

第一种 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-eq...

tdl081071tdy的博客 504

Pareto 优化 (Pareto Optimization) 算法详解及案例分析

Pareto 最优解是指在多目标优化问题中,无法通过改进一个目标而不损害其他目标的解。具体来说,对于一个解x∗x^*x∗,如果不存在另一个解xxx使得所有目标函数fixf_i(x)fi​x都不劣于fix∗f_i(x^*)fi​x∗,且至少有一个目标函数fjxf_j(x)fj​x优于fjx∗f_j(x^*)fj​x∗,则x∗x^*x∗是 Pareto 最优解。

闲人编程的博客 2761

CSS布局对齐方式--水平居中、垂直居中、水平垂直居中

    前言:在网页布局中,经常遇到需要使元素居中对齐的时候,居中对齐的方式有:水平居中、垂直居中和水平垂直居中。这次,借此回顾总结一下,并在此记录下相关内容。 一、水平居中:     (1)行内元素的水平居中             如果被设置的元素为文本、图片等行内元素时,在父元素中设置text-align:center实现行内元素水平居中,将子元素的设置为display:inline-...

qq_26780317的博客 4万+

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

CSS的20种对齐代码!左对齐、右对齐、中间对齐、底部对齐、两端对齐等,代码简单(最全)

CSS 中的右很多对齐的方式,今天主要来分享 20 个常用的对齐方式。来一起看看吧。

u013179804的博客 1万+

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

CSS实现垂直居中的常用方法

CSS实现垂直居中的常用方法

weixin_44237303的博客 148

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

CSS 布局 - 水平 & 垂直对齐

对齐方式方法是否推荐说明文本水平居中✅简单有效块水平居中✅需要设置宽度垂直居中(现代)✅✅✅推荐使用,通用简洁水平 + 垂直居中✅✅✅最推荐传统垂直居中⚠️ 一般兼容性好但冗长,不推荐新项目使用定位居中✅对弹窗等定位元素有用Grid 居中✅✅新手也易懂。

likuoelie的博客 1160

web布局15

CSS 网格布局除了提供定义网格和放置网格项目的相关属性之外,也提供了一些控制对齐方式的属性。这些控制对齐方式的属性,和 Flexbox 布局中的对齐属性justify-*align-**-items*-content*-self等是相似的:在网格布局中可以用它们来控制网格项目在内联轴(Inline Axis)和块轴(Block Axis)的对齐方式;也可以用来控制网格轨道在内联轴(Inline Axis)和块轴(Block Axis)的对齐方式。

lzping_719的专栏 981

收藏!40 个 CSS 布局技巧

一 水平垂直居中 如何实现水平垂直居中可以说是CSS面试题中的经典面试题,在多年前这个面试题给很多同学都带来了困惑,但Flexbxo布局模块和CSS Grid布局模块的到来,可以说实现水平垂直居中已是非常的容易。 Flexbox中实现水平垂直居中 在Flexbox布局模块中,不管是单行还是多行,要让它们在容器中水平垂直居中都是件易事,而且方法也有多种。最常见的是在Flex容器上设置对齐方式,在Flex项目上设置 margin:auto。 先来看在Flex容器上设置对齐方式。 Flex容器和Flex项目上设置

283

web前端字体居中_css怎样使文字居中?

在CSS中,可以使用text-align属性来使文字水平居中;使用line-height属性来使单行文字垂直居中、使用vertical-align:middle +display:table-cell使多行文字垂直居中。下面本篇文章就来给大家介绍一下。1、使用text-align属性来使文字水平居中text-align属性规定元素中的文本的水平对齐方式,通过使用center值设置文本居中。text...

weixin_39590868的博客 3050

CSS place-items: center; 详解与用法

是一个强大的 CSS 简写属性,用于同时控制 网格(Grid) 和 弹性盒(Flexbox) 布局中的对齐方式。

记录来时的路 581

bootstrap 垂直居中 布局_你可能不太熟知的布局技巧

文末福利:开发者藏经阁随着Web技术不断的革新,CSS近几年也变得多年前要更强大。在Web开发中,CSS是不可或缺的一部分,对于很多Web开发者来说,有很多CSS属性不知道,或者说他们知道,但忘记在最恰当的时候使用最适合的CSS属性。而且时至今日,其中有一些CSS的属性可以让开发者能节约更多的时间。比如说,在Web布局中,现代CSS特性就可以更好的帮助我们快速实现,例如等高布局,水平垂直...

weixin_42381087的博客 2099

html div flex,css3 flex实现div内容水平垂直居中的几种方法

一、flex-direction: (元素排列方向)※ flex-direction:row (横向从左到右排列==左对齐)※ flex-direction:row-reverse (与row 相反)※ flex-direction:column (从上往下排列==顶对齐)※ flex-direction:column-reverse (与column 相反)二、flex-wrap: (内容一行容...

weixin_30069911的博客 432

html flex上下居中,css3 flex实现div内容水平垂直居中的几种方法

一、flex-direction: (元素排列方向)※ flex-direction:row (横向从左到右排列==左对齐)※ flex-direction:row-reverse (与row 相反)※ flex-direction:column (从上往下排列==顶对齐)※ flex-direction:column-reverse (与column 相反)二、flex-wrap: (内容一行容...

weixin_42584586的博客 1102

CSS盒子水平垂直布局

文本水平居中 (1)父元素:text-align:center; div垂直居中: (1)父元素:display:flex; 子元素:align-self:center; div水平垂直居中: (1)父元素:display:flex; justifiy-content:center; align-items:center; 子元素: (2)父元素:position:relative: 子元素:postion:absolute; left:50%; right:50%; transform:translate

SundayGoG的博客 213

水平垂直居中、两栏布局、三栏布局、flex布局、常见的块级/行内/空元素、CSS Hack

1)主轴方向:flex-driectionrow(默认值):主轴为水平方向,起点在左端。:主轴为水平方向,起点在右端。column:主轴为垂直方向,起点在上沿。:主轴为垂直方向,起点在下沿。2)如何换行:flex-wrapnowrap(默认值):默认不换行wrap:换行,第一行在上:换行,第一行在上3)主轴方向和换行的复合:flex-flow默认:flex-flow:row nowrap4)主轴对齐方式:justify-contentflex-start(默认值):左对齐。

2301_77783555的博客 329
上一篇: Flex 布局教程:语法篇
下一篇: html语义化理解
SinceSpringOnU
博客等级 码龄7年 9粉丝 52原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值