首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何水平对齐3个div和中间div的一个div底部

要水平对齐3个div和中间div的一个div底部,可以使用Flexbox布局或者CSS Grid布局来实现。

使用Flexbox布局:

  1. 在父容器上应用display: flex;属性,使其成为一个Flex容器。
  2. 将3个div和中间div的一个div作为Flex容器的子元素。
  3. 给父容器添加justify-content: space-between;属性,使子元素在水平方向上平均分布,并且左右两端与父容器的边缘对齐。
  4. 给中间div的一个div添加margin-top: auto;属性,使其自动向底部对齐。

示例代码如下:

HTML:

代码语言:txt
复制
<div class="container">
  <div class="left"></div>
  <div class="middle"></div>
  <div class="right"></div>
</div>

CSS:

代码语言:txt
复制
.container {
  display: flex;
  justify-content: space-between;
}

.middle {
  margin-top: auto;
}

使用CSS Grid布局:

  1. 在父容器上应用display: grid;属性,使其成为一个Grid容器。
  2. 将3个div和中间div的一个div作为Grid容器的子元素。
  3. 使用grid-template-columns属性设置3个div的宽度,可以使用相等的宽度或者使用网格自动布局。
  4. 使用grid-template-rows属性设置中间div的一个div的高度,可以使用auto或者固定高度。
  5. 使用grid-row属性将中间div的一个div放置在底部。

示例代码如下:

HTML:

代码语言:txt
复制
<div class="container">
  <div class="left"></div>
  <div class="middle"></div>
  <div class="right"></div>
</div>

CSS:

代码语言:txt
复制
.container {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr; /* 可以根据需求调整宽度 */
  grid-template-rows: auto; /* 可以根据需求调整高度 */
}

.middle {
  grid-row: 2; /* 将中间div的一个div放置在第2行 */
}

以上是使用Flexbox布局和CSS Grid布局来实现水平对齐3个div和中间div的一个div底部的方法。这些布局技术在前端开发中非常常用,可以灵活地实现各种布局需求。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Web前端实现锚点功能三种方式

block,定义垂直方向对齐, "start", "center", "end", 或 "nearest"之一。...默认为 "start",元素顶部将滚动到视窗顶部; 取值 "end",元素底部视窗底部对齐; 取值 "center",元素中线将视窗中间对齐; 取值 "nearest",元素将就近对齐。...即,若页面向上滚动,则顶部对齐;若页面向下滚动,则底部对齐。 inline,定义水平方向对齐, "start", "center", "end", 或 "nearest"之一。...Element.getBoundingClientRect 返回值包含 top、left、bottom、right、width height 六个属性,除了 width height 以外属性均是相对于视窗左上角来计算..., targetOffsetTop); 同理,滚动元素到与视窗底部或与视窗中间对齐亦可取参计算。

3.1K31

【移动端网页布局】流式布局案例 ⑤ ( 连续排列链接图片 | 设置盒子圆角 | 超出部分隐藏 | 设置浮动布局 | 精确计算浮动元素宽度避免换行 | 设置图片宽度自适应 )

, 放置在 单独 标签中 , 每个 标签中放置一个 链接标签 , 在 链接标签中包裹一个 图片 ; <!...3、设置圆角超过部分隐藏 在布局 左上角 右上角 都有一个圆角 , 并且矩形图片超过圆角部分被隐藏了 , 设置圆角超出部分隐藏样式 : .brand { /* 设置圆角后 超过圆角图片不再显示..., 会自动换行 , 因此这里为每个子元素设置一个 1/3 宽度 , 即 33.33% ; 子元素 设置浮动宽度样式如下 : .brand div { /* 设置 .brand...-- 中间搜索框 --> <!...none; } img { /* 默认图片对齐方式是基线对齐 只要不是基线对齐 这里随便设置 顶部 / 底部 / 中部 对齐都可以 */ vertical-align

3.5K20

【CSS】课程网站网页底部开发 ( 网页底部盒子模型测量及样式 | 代码示例 )

绘制矩形框中部分 : 一、网页底部盒子模型测量及样式 ---- 1、盒子布局说明 底部盒子主要由如下部分组成 : 红色盒子 : 最外层盒子 水平方向 充满整个 浏览器 , 背景是白色 ; 蓝色盒子...最终内存尺寸为 118x34 像素 */ width: 118px; height: 34px; /* 上下左右 1 像素边框 */ border: 1px solid #00a4ff; /* 水平居中对齐...-- 底部 全部课程 按钮 --> 全部课程 <!...*/ text-align: center; /* 垂直对齐 - 行高 = 内容高度 */ line-height: 38px; } /* Banner 条右侧 课程表 底部按钮 - 鼠标经过时样式..., 其中间隙 15 像素 228 * 5 + 15 * 4 = 1200 像素 , 但是最后一个盒子右侧添加 15 像素右边距地话 , 会导致最后一个元素掉到第二行 ,

4.2K30

网页设计基础知识汇总——超链接

:创建表格,并在其中间添加标题需要数据 标签中常用属性: ——设置表格背景色; ——...决定标题放在表格顶部、底部、右边、左边、中间。 行(row)、表头(head)、数据(data): :放在最外层,创建一个表格; :创建一行; ......:用来设置表格头,文字通常粗体居中显示 属性:align:水平对齐方式,取值为left(左对齐)、center(居中对齐)、right(右对齐)。...valign:垂直对齐方式,取值为top(靠顶端对齐)、 middle(居中间对齐)、bottom(靠底部对齐)。...div标签属性: align:div内部文字水平对齐方式,取值为left(左对齐)、center(居中对齐)、right(右对齐)、justify (两端对齐) 。

3.3K30

【移动端网页布局】flex 弹性布局 ⑥ ( 设置侧轴多行子元素排列方式 | align-content 样式说明 | 代码示例 )

---- 1、align-content 样式引入 在上一篇博客 【移动端网页布局】flex 弹性布局 ⑤ ( 设置侧轴单行子元素排列方式 | align-items 样式说明 | 代码示例 ) 介绍...align-items 样式 只能设置 侧轴单行子元素排列方式 , 如果侧轴有多行元素排列 , 则需要使用 align-content 样式进行设置 ; 如果 垂直方向 有 两行元素 , 第一行紧贴顶部 , 第二行紧贴底部...; flex-start , 默认值 , 侧轴中元素 从上到下 排列 ; ( 侧轴默认方向是 从上到下 方向情况 ) flex-end , 侧轴中元素 从下到上 排列 ; center , 多行元素在侧轴...居中对齐 , 显示在中间 ; space-around , 多行元素 在 侧轴 中 , 平分剩余空间 ; space-between , 多行元素 首先将上下两行紧贴顶部底部 , 其余元素平分剩余空间...> 展示效果 : 4、代码示例 - 侧轴多行元素 / 上下两行紧贴顶部底部 / 其余元素平分剩余空间 space-between , 多行元素 首先将上下两行紧贴顶部底部

37720

利用vertical-align:middle实现在整个页面居中

如果想让一个div或一张图片相对于整个页面居中,用vertical-align:middle可以很简单地解决。 就以一个404页面为例,看如何让一张图片相对于整个页面居中,如下图: ?...以前总是以为vertical-align与text-align是同样道理,一个是垂直居中,一个水平居中,只要给class="wall"div加上一个vertical-align:middle就能让图片垂直居中...这很容易理解,如果给一个表格td加一个vertical-align:middle样式,表格里面的内容会垂直居中,同样的如果给一个vertical-align:bottom就会底部对齐,如果给一个vertical-align...专业语言我不会说,可以打个比喻:假设有两个行内元素ab,ab都是img,当a加了一个vertical-align:middle样式之后,b底部(基线)就会对齐a中间位置,如下图: ?...如果ab都加了一个vertical-align:middle样式,那么就互相对齐了对方中间位置,也就是它们在垂直方向上中线对齐了,如下图: ?

1.4K10

css布局 - 垂直居中布局一百种实现方式(更新中...)

帮多行文本找一个继父来领养他,让继父弥补父元素给他带来伤害(行高水平居中对齐样式修改) 2. margin负边距简单处理一下底部小“裂痕” 三、父元素高度 不 固定时,单行文本 | 图片绝对垂直居中...我往图片后边写了一个x辅助理解,这下明白了吧!图片默认是文本基线对其。文本垂直居中,就到垂直正中间那里。但是图片底部为了与文字底部对其,所以留给顶部空间就不多了。...二、父元素高度固定多行文本垂直居中 这种效果其实中间只有一个图片一个道理,因为你需要帮多行文本找一个继父来领养他,所以结构上就是这样: 1 2... 3 中间content这个元素就好比一个图片,要实现他水平垂直居中,那么他就得变成一个inline-block元素,(图片本身就是inline-block所以在上一段才没有强调...哇,我惊喜发现,现在文字行数增多或减少,好像真的看上去垂直居中了哎! 等等,高兴太早,又发现单个图片垂直居中相同问题,顶部底部预留空间好像不一般多啊! ?

3.4K10

CSS Flexbox 布局完全指南 (一):4000字,多示例讲解

示例一:如何用 Flexbox 制作一个影片集 使用 Flexbox 实现横向纵向排列比大多数人想象要简单。...再进一步,我们可以让图片完美居中对齐(无论是水平还是垂直) 如上所示,这可以让图片在 .gallery 内水平和垂直都居中。 你可以通过 Flexbox 布局方式随意选择你想要对齐选项。...示例三:如何使用 Flexbox 创建网格布局 在这个例子中,我们要探讨整体 CSS 框架概念,这是很重要一点。 什么是网格布局? 网格是用来构建内容一系列水平垂直相交引导线。 ?...给特定元素加上 .row\_cell — bottom 类会让它在 row 内靠底部对齐 .row_cell--center { align-self: center} ?...整行三个元素都靠底部对齐 嵌套网格 只需要简单设置,rows(行元素)就可以嵌套布局。 ? 一行内有两个元素,其中一个是另一个两倍大小。

4.4K20

【CSS】vertical-align 垂直对齐 ( 块级元素对齐 | 行内元素 行内块元素对齐 | 基线对齐 | 垂直居中 | 顶部对齐 | 底部对齐 )

一、取消文本域拖拽 块级元素对齐 : 浏览器居中对齐 : 设置 margin: 0 auto; 样式 ; 内部水平居中 : 设置 text-align: center; 样式 ; 内部垂直居中 : 行高...可以设置四种对齐 : baseline 基线 / top 顶线 / middle 中线 / bottom 底线 ; 基线对齐 : 图片底部位置 与 文字基线 对齐 ; 这是默认对齐方式 , 如果是...p , 则 p 下半部分在图片下方 ; vertical-align: baseline; 垂直居中 : 图片中心位置 与 文字中线 对齐 ; vertical-align: middle; 顶部对齐...="one"> 基线对齐 : 图片底部与文字基线对齐 中线对齐 : 图片中心与文字中心对齐...src="keji.jpg" alt="" class="four"> 底线对齐 : 图片底部与文字底线对齐 显示效果 :

3.4K30

H5C3第四节

【演示:01-伸缩布局初体验.html】 当给一个盒子设置了display:flex之后,这个盒子就有了主轴 侧轴 概念。...justify-content(重点) justify-content主要用来设置主轴方向对齐方式 ,可选值有: 可选值: flex-start: 弹性盒子元素将向起始位置对齐 flex-end:...center: 弹性盒子元素将向行中间位置对齐 space-around: 弹性盒子元素会平均地分布在行里 space-between:第一个贴左边,最后一个贴右边,其他盒子均分,保证每个盒子之间空隙是相等...--每一个class为sectiondiv都是一屏,section这个类是固定--> 我是内容1 <div class="section...paddingTop/paddingBottom 给每一个section设置一个paddingTop或者paddingBottom,默认值为0,如果需要给页面设置一个固定定位头部菜单或者底部菜单时候

5.3K30

grid布局—让css变得更简单

八、线(lines) 网格假想水平线垂直线被称为线(lines)。这些线在网格左上角从 1 开始编号,垂直线向右、水平线向下累加计数。 这是一个 3x3 网格线条: ?...start:使内容在单元格顶部对齐, center:使内容在单元格垂直对齐, end:使内容在单元格底部对齐....start:将所有内容对齐到网格区域(grid area)顶部, center:将所有内容对齐到网格区域(grid area)中间(垂直居中), end:将所有内容对齐到网格区域(grid area...例如:下面的代码将顶部三个单元格合并成一个名为header区域,将底部三个单元格合并为一个名为footer区域,并在中间行生成两个区域————advertcontent。...3 条第 4 条水平线及第 1 条第 4 条垂直线之间区域内。

5.3K20

【CSS】课程网站横版导航栏 ( 横版导航栏测量及样式 | 代码示例 )

像素 , 该大盒子 , 可以分为如下三个小盒子 , 小盒子中元素都是垂直居中 , 可以在大盒子中设置一个行高 , 小盒子自动继承 ; font-xxx , line-xxx , text-xxx...> 中间黑盒子大概区域如下 , 竖线中间文字都是链接标签 , 每个链接标签左右两侧各有 30 像素间隔 , 这里使用外边距实现 ; 文本高度行高继承父元素样式 , 都为 60 ,...-- 底部 全部课程 按钮 --> 全部课程 <!...10 像素 */ margin-top: 10px; /* 文字大小 16 像素 */ font-size: 16px; /* 设置文字颜色 */ color: #00a4ff; /* 水平对齐...*/ text-align: center; /* 垂直对齐 - 行高 = 内容高度 */ line-height: 38px; } /* Banner 条右侧 课程表 底部按钮 - 鼠标经过时样式

5.2K30

CSS垂直居中七个方法

显示:行内块; 垂直对齐中间; } .bluebox { width:30px; 高度:40px; 背景:#00f; 显示:行内块; 垂直对齐中间; 因此,如果有一个方块变成了高度100%,....greenbox { width:30px; 高度:100%; 背景:#0c0; 显示:行内块; 垂直对齐中间; } 但是我们总不能每次要垂直居中,都要添加一个奇怪div在里头吧!...所以我们就要把脑筋动到“伪元素”身上,利用:: before:: after添加div进到杠杠内,让这个“伪” div高度100%,就可以轻松地让其他div都居中。不过不过不过!...,因为margin相对水平宽度,必须要用top才会正确。...; 高度:100px; 边框:1px实线#000; 垂直对齐中间; } td div, .like-table div { width:100px; 高度:50px; margin:0自动

2.8K30
领券