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

如何在不同高度的div中垂直放置4个盒子?

在不同高度的div中垂直放置4个盒子,可以使用CSS的flexbox布局来实现。具体步骤如下:

  1. 创建一个父容器div,并设置其display属性为flex,这样子元素会按照一行排列。
  2. 在父容器div中创建4个子元素盒子,分别表示要放置的4个盒子。
  3. 设置父容器div的align-items属性为center,这样子元素盒子会在垂直方向上居中对齐。
  4. 设置父容器div的justify-content属性为space-between,这样子元素盒子会在水平方向上均匀分布。
  5. 如果需要调整子元素盒子的间距,可以使用父容器div的margin属性来控制。

以下是一个示例代码:

代码语言:html
复制
<style>
    .container {
        display: flex;
        align-items: center;
        justify-content: space-between;
        height: 400px; /* 设置父容器div的高度 */
    }

    .box {
        width: 100px;
        height: 100px;
        background-color: #ccc;
    }
</style>

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

这样就可以在不同高度的div中垂直放置4个盒子了。对于更复杂的布局需求,可以根据具体情况进行调整和扩展。

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

相关·内容

【CSS】309- 复习 CSS盒模型

CSS盒模型:标准模型 + IE模型 1.1 W3C盒子模型(标准盒模型) ? 1.2 IE盒子模型(怪异盒模型) ? 二、知识点 2.1 标准模型和IE模型区别 计算宽度和高度不同。...( 即 width/height 只是内容高度,不包含 padding 和 border 值 ) IE盒子模型:盒子总宽度/高度 = width/height + margin = (内容区宽度/高度...如以上代码:父元素不加 overflow: hidden,则父元素实际高度为 100px;加上 overflow: hidden 父元素高度为 110px,给父元素创建了 BFC,块级格式化上下文。...2.5.2 BFC原理(渲染规则|布局规则): (1)内部 Box 会在垂直方向,从顶部开始一个接着一个地放置; (2)Box 垂直方向距离由 margin (外边距)决定,属于同一个 BFC 两个相邻...,清除内部浮动(原理:触发父 div BFC 属性,使下面的子 div 都处在父 div同一个 BFC 区域之内) 4、去除边距重叠现象,分属于不同 BFC 时,可以阻止 margin 重叠 2.6

1.5K30

解析 CSS 格式化上下文

BFC 内垂直方向盒子距离以 margin 属性为准,上下 margin 会叠加。每个元素左侧最外层边界与包含块 BFC 左边相接触(对于从左往右格式化,否则相反)。即使存在浮动也是如此。...IFC line-box (也称行盒)高度是根据包含行内元素中最高实际高度计算而来。(不受垂直方向 padding/margin 影响) ?...,高度由该行框内最大高度行内框决定 content area 内容区域,高度是 font-size 和 padding 和 containing box 包含框,最外层包裹盒子 line-height...当几个行内元素不能在一个单独行盒中水平放置时,他们会被分配给两个或更多(vertically-stacked line boxes)垂直栈上行盒,因此,一个段落是很多行盒垂直栈。...这些行盒不会在垂直方向上被分离(除非在其他地方有特殊规定),并且他们也不重叠。 垂直方向上,当行内元素高度比行盒要低,那么 vertical-align 属性决定垂直方向上对齐方式。

1.1K20

CSS画圆、三角形、品字、骰子

CSS画圆、三角形、品字、骰子 圆 让 border-radius属性值等于盒子高度一半就行(当然,盒子得是正方形才能得到圆,否则便不是圆) .circle { width...class="triangle1"> 可以知道,边框实际上应该是长方形或正方形,但是第二个例子,出现了梯形边框,这就是因为有左边框...;把尾元素单独拖下来 .item:nth-child(2) { align-self: flex-end; } 三 三做法和二类似,不同是,三需要把第三个元素拖下来,而第二个元素应该在中间.../div> 然后,上下两个中盒子,分别要在大盒子上下,所以大盒子需要设置主轴为垂直方向,并设置 justify-content: space-between;...需要再来一个盒子,然后让这个中盒子单独居中局可

1.2K20

【CSS】课程网站头部制作 ⑤ ( 用户栏测量 | 用户栏代码编写 | 代码示例 )

; 导出切片如下 : 二、用户栏代码编写 ---- 1、HTML 结构 头像 与 名称 单独放在一个 div 盒子 , 这两个元素都要垂直居中对齐 , 分别需要单独设置 ; 头像垂直居中对齐..., 需要使用 padding 内边距方式设置 ; 文字垂直居中对齐 , 需要使用 内容高度 = 行高 方式设置 ; 核心代码 : <!...放置在一行 ; 然后 , 设置用户栏头像 盒子样式 , 为其设置 6 像素 上下内边距 , 使得头像图片垂直居中 ; 整体 用户栏盒子 高度 42 像素 ; 头像图片宽高均为 30 像素 ; 头像.../* 用户栏盒子 */ .user { float: left; /* 高度 = 行高 垂直居中 */ height: 42px; line-height: 42px; /* 距离左侧 30...ul li { /* 设置 无序列表项 从左到右排列 */ float: left; } /* 设置无序列表链接样式 */ .nav ul li a { /* 显示模式 块级元素 */

2.4K30

【CSS】使用 固定定位 实现顶部导航栏 ( 核心要点 | 固定定位元素居中设置 | 代码示例 )

, 下方网页内容会被顶部导航栏覆盖 , 这里需要设置一个上外边距 , 上外边距值大于等于 顶部导航栏高度 ; /* 顶部固定定位盒子高度 100px 由于其脱标会覆盖标准流元素...此处标准流盒子设置 100px 外边距 防止被顶部固定定位盒子覆盖 */ margin-top: 55px; 由于设置 绝对 / 固定 定位 , 会将元素变为行内块元素 , 其宽度是内部子元素宽度..., 如果要精确放置顶部导航栏位置 , 顶部导航栏盒子必须设置宽度 , 这里选择设置其宽度为 100% ; /* 定位元素如果不设置宽度 默认就是内部内容宽度 */ /* 如果要设置盒子...不要被其它盒子覆盖 */ z-index: 3; } 2、固定定位垂直居中设置 设置左右两侧广告栏在浏览器垂直居中设置 ; 首先 , 将盒子顶部设置到浏览器垂直中线位置 , position...solid #ccc; /* 上下设置 100 像素外边距 水平居中 */ margin: 0px auto; /* 子元素与 */ padding: 10px; /* 顶部固定定位盒子高度

2.8K50

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

一、连续排列链接图片样式及核心要点 1、实现效果 实现如下效果 , 在下面的布局 , 水平放置 3 个图片链接 ; 每个图片链接 占 宽度 1/3 ; 2、标签结构设置 将布局 三个 链接图片..., 放置在 单独 标签 , 每个 标签中放置一个 链接标签 , 在 链接标签包裹一个 图片 ; <!...{ /* 设置 .brand 父容器下 div 盒子左浮动 这样这些盒子可以在水平方向上紧密排列 */ float: left; /* 要在水平方向上放置 3...Logo 盒子 图片宽度是 30 像素 高度没有给出 但是 宽高等比例缩放 高度也是 30 像素 */ width: 30px; /* 默认图片对齐方式是基线对齐 只要不是基线对齐...垂直居中 */ line-height: 44px; } .search { /* 中间部位搜索栏盒子内容 */ /* 子绝父相 该容器子容器需要绝对定位 因此父容器设置为相对定位

3.5K20

【移动端网页布局】流式布局案例 ③ ( 实现搜索栏功能 | 伪元素选择器 | 子绝父相 | 外边距塌陷处理 | 二倍精灵图处理方案 )

390 x 44 像素 , 该父容器高度是 44 像素 ; 由于设备宽度不同 , 这里不设置宽度 , 让宽度自适应即可 ; css 样式实例 : .search-btn { /* 左侧按钮布局...44 像素 , 搜索栏盒子高度 30 像素 , 设置该高度后 , 需要设置 7 像素 上边距 , 使得该搜索栏可以垂直居中 ; 如果为中间搜索栏盒子设置一个 7 像素外边距 , 会导致外边距塌陷...-- 中间搜索框 放大镜 图标 --> <!...Logo 盒子 图片宽度是 30 像素 高度没有给出 但是 宽高等比例缩放 高度也是 30 像素 */ width: 30px; /* 默认图片对齐方式是基线对齐 只要不是基线对齐

2K30

前端系列第3集-如何理解css盒子型?

/* 控制外边距大小 */ } 在上面的代码,我们创建了一个包含文本 元素,并使用CSS盒子模型来控制其大小和位置。...可以使用CSSbox-sizing属性来改变盒子模型计算方式。将box-sizing设置为border-box可以将内边距、边框和外边距宽度和高度计算到盒子总宽度和高度。...可以使用CSS@media查询和相对单位(百分比和em)来实现一个响应式布局。...伪类和伪元素是CSS两个不同概念。 伪类(pseudo-class)是指用于向某些选择器添加特殊效果关键字,它们以冒号(:)开头,例如:hover、:active、:focus等。...BFC具有以下特性: 内部盒子会在垂直方向上一个接一个地放置。 属于同一个BFC两个相邻盒子上下外边距会发生重叠。 BFC区域不会与浮动元素重叠。

21410

前端必知必会-BFC案例剖析

标准文档流盒子其实就是格式化上下文,只不过它包括块级格式化上下文以及行级格式化上下文,不同格式化上下文渲染规则不同,它决定了它子元素按照什么样规则来排列,以及和其他元素关系和相互作用。...内部 Box 会在垂直方向上一个接一个放置 块级格式化上下文中相邻盒子之间垂直边距折叠 每个元素左外边距与包含块左边界相接触(从左向右),即使浮动元素也是如此。...class="box1">第一个盒子 第二个盒子 ?...在上面的例子我们可以看到,我们给第一个盒子设置下边距 30px ,第二个盒子上边距设置 20px ,按照理论来说,这两个盒子实际间距应该为 30+20 也就是 50px ,但事实上是这两个盒子距离只有...="item">内部盒子 ?

78530

CSS——可视化格式模型

CSS可视化格式模型 CSS规定每一个元素都有自己盒子模型(相当一规定了这个元素如何显示); 然后可视化格式模型则是把这些盒子模型按照规则摆放到页面上,也就是如何布局; 换句话说,盒子模型规定了怎么在页面上摆放盒子.../div> div元素生成一个块框,其中有几个行内框(em)以及文本some和text,此时会专门为这些文本生成匿名行内框; display属性影响 display几个属性也可以影响不同生成...,与普通元素重合),除非这个元素也创建了一个新BFC; BFC特点: 内部box在垂直方向,一个接一个放置; box垂直方向由margin决定,属于同一个BFC两个box间margin会重叠...; BFC区域不会与float box重叠(可用于排版) BFC就是页面上一个隔离独立容器,容器里子元素不会影响到外面的元素,反之也是如此; 计算BFC高度时,浮动元素也参与计算(不会浮动塌陷...行框宽度有它包含块和其中浮动元素决定,高度的确定由行高度计算规则决定; 行框规则: 如果几个行内框在水平方向上无法放入一个行框内,它们可以分配在两个或多个垂直堆叠行框(即行内框分割)

93920

前端面试之HTML && CSS

CSS 盒子模型 CSS 盒模型本质上是一个盒子,它包括:边距,边框,填充和实际内容。CSS 盒子模型包括 IE 盒子模型和标准 W3C 盒子模型。...BFC是CSS布局一个概念,是一个独立渲染区域,规定了内部box如何布局, 并且这个区域子元素不会影响到外面的元素,其中比较重要布局规则有内部 box 垂直放置,计算 BFC 高度时候,浮动元素也参与计算...BFC原理布局规则 内部Box会在垂直方向,一个接一个地放置 Box垂直方向距离由margin决定。...简单说它就是一个相对单例 :font-size:10px;,那么(1rem = 10px)了解计算原理后首先解决怎么在不同设备上设置 html font-size 大小。...优点:可以快速适用移动端布局,字体,图片高度 缺点: ①目前 ie 不支持,对 pc 页面来讲使用次数不多; ②数据量大:所有的图片,盒子都需要我们去给一个准确值;才能保证不同机型适配; ③在响应式布局

4.4K10

CSS样式

table { border-collapse:collapse; } table,td { border: 1px solid black; } 表格文字对齐:表格文本对齐和垂直对齐属性,text-align...(内容) - 盒子内容,显示文本和图像 弹性盒模型 弹性盒子是 CSS3 一种新布局模式 CSS3 弹性盒是一种当页面需要适应不同屏幕大小以及设备类型时确保元素拥有恰当行为布局方式 引入弹性盒布局模型目的是提供一种更加有效方式来对一个容器子元素进行排列...、对齐和分配空白空间 弹性盒子只定义了弹性子元素如何在弹性容器内布局 CSS3弹性盒内容: 弹性盒子由弹性容器(Flex container)和弹性子元素(Flex item)组成 弹性容器通过设置...center 弹性盒子元素在该行侧轴(纵轴)上居中放置。...(如果该行尺寸小于弹性盒子元素尺寸,则会向两个方向溢出相同长度) 子元素上属性 flex:flex 根据弹性盒子元素所设置扩展因子作为比率来分配剩余空间 <div class="flex-container

23530

浅析CSS里 BFC 和 IFC

BFC布局规则如下: 1、内部盒子会在垂直方向,一个个地放置; 2、 BFC是页面上一个隔离独立容器; 3、属于同一个BFC两个相邻Box上下margin会发生重叠 ; 4、 计算BFC高度时...1、两个相邻普通流块元素垂直方向上 margin会折叠 ? 效果图是: ?...根据BFC规则第3条: 盒子垂直方向距离由margin决定,属于同一个BFC + 两个相邻Box + 上下margin 会发生重叠。...但如果我们 触发外部容器BFC,根据BFC规范第4条:计算BFC高度时,浮动元素也参与计算,那么外部div容器就可以包裹着浮动元素,所以只要把代码修改如下: ? 就可以完成以下效果: ?...2 摆放这些框时,它们在水平方向 内外边距+边框 所占用空间都会被考虑;  在垂直方向上,这些框可能会以不同形式来对齐:  水平margin、padding、border有效,垂直无效。

1.4K110

小结BFC基本知识与应用

(3)CSS2.1 只有BFC和IFC,CSS3还增加了GFC和FFC BFC: 块级格式化上下文,它是一个独立渲染区域,该区域拥有一套渲染规则来约束块级盒子布局,并且与这个区域外部无关。...、table-cell、table-caption、flex、inline-flex position值为absolute或者fixed 3.BFC布局规则 (1)内部元素会在垂直方向上一个接一个放置... 效果: 原margin.png 以第一行来看,它距离顶部垂直距离,和距离第二行垂直距离是一样。...如果把父容器container宽度,设为一个小于左盒子宽度+右边盒子宽度值(200px+300px),400px时,就会看到这样效果: 两栏.png 说明左右两个盒子并不会自动调整宽度来自适应布局...overflow: hidden; } 效果: 解决浮动高度塌陷.png 父元素高度被撑起来了,为右盒子高度400px; 5.小结 关于BFC内容也是属于老生常谈问题,关于BFC只需要知道,

3.1K651

【移动端网页布局】Flex 弹性布局案例 ② ( 顶部固定定位搜索栏 | 固定定位盒子居中对齐 | 二倍精灵图设置 | CSS3 垂直居中对齐 )

- 行高 = 内容高度 ( 总高度 - 边框高度 - 内边距高度 ) 普通盒子模型 , 设置垂直居中对齐时 , 直接设置 内容高度 = 行高 即可 ; 由于采用是 CSS3 样式 , 该模式下 ,...设置 height 高度 = 内容高度 + 边框高度 + 内边距 ; 如果要设置垂直居中 , 只能设置其中 行高 = 内容高度 , 要把 2 像素边框去掉 ; 因此在该 CSS3 样式 , 高度设置为...= 26 会偏下 上面的设置 高度 不等于 行高 原因是 这是 CSS3 模型 CSS3 垂直居中是在 边框 + 内边距 + 尺寸 高度垂直居中 */ height...= 26 行高 = 24 像素 垂直居中 设置行高 = 26 会偏下 上面的设置 高度 不等于 行高 原因是 这是 CSS3 模型 CSS3 垂直居中是在...= 26 行高 = 24 像素 垂直居中 设置行高 = 26 会偏下 上面的设置 高度 不等于 行高 原因是 这是 CSS3 模型 CSS3 垂直居中是在

28620

css面试点二:BFC(块级格式化上下文)+常见布局方案

不同类型 Box, 会参与不同 Formatting Context(一个决定如何渲染文档容器),因此Box内元素会以不同方式渲染。...BFC是一个独立布局环境,其中元素布局是不受外界影响,并且在一个BFC,块盒与行盒(行盒由一行中所有的内联元素所组成)都会垂直沿着其父元素边框排列。...或fixe BFC布局规则: 1.内部Box会在垂直方向,一个接一个地放置(不设置浮动,设置浮动那肯定是左右一行排列了)。...2.Box垂直方向距离由margin决定。...合并后外边距高度等于两个发生合并外边距高度较大者。 3.每个元素margin box左边, 与包含块border box左边相接触(对于从左往右格式化,否则相反)。

48520

CSS魔法堂:重新认识Box Model、IFC、BFC和Collapsing margins

反正我对于名词一向采用拿来主义,理解名词背后含义才是硬道理。   我们简单理解为每个盒子都有一个FC特性,不同FC值代表一组盒子不同排列方式。...line box是一个看不见摸不着边框,但每一行所占垂直高度其实是指line box高度,而不是inline-level box高度。   line box特点:   1....当block-level box高度为0,垂直方向border和padding为0,并且没有in-flow子元素。那么它垂直方向margin将会发生重叠。 2....也就out-flow box不影响block-level box高度计算。也就是解释了为何div仅含floated元素时,div盒子高度为0现象了。...等. 5.两个不同辅音字母在一起时,移行时前后各一个.:cap-tain,ex-pose等. 6.当两个音节间只有一个辅音字母时,如果该辅音字母前元音字母按重读开音节规则发音,该辅音字母移至下一行

1K70

前端基础篇之CSS世界

用内联元素(文字)阻隔;4. 给父元素设定高度。 margin百分比值跟padding一样,垂直方向margin和水平方向上一样都是相对于父元素宽度计算。...line-height作用: line-height属性用于设置多行元素空间量,多行文本间距。 对块级元素来说,line-height决定了行框盒子最小高度。...(图中两个div行高一样,div.one 背景色区域就是行框盒子高度,而 div.two 背景区域则是实际高度,其行框盒子高度div.one 是一样。) ?...div元素高度仍然和上图一模一样,由字母x和行距共同撑起。此时如果删除字母x,div高度不变,因为span元素行框盒子前会产生幽灵空白节点,而幽灵空白节点+行高也能撑起div。 ?...特性 1 内部盒是指块级盒。因为根元素也是BFC,所以我们平常写div p都是独自占一行。 特性 2 是BFC,所以里面的元素垂直方向margin会发生折叠。

2K50

【移动端网页布局】流式布局案例 ⑥ ( 多排按钮导航栏 | 设置浮动及宽度 | 设置图片样式 | 设置文本 )

: 40px; /* 上下 10 像素外边距 */ margin: 10px 0; } 5、设置文本 在链接文本 , 放在 标签 , 该标签宽度默认充满父容器 , 高度自适应...; 将其设置为 block 块级元素 , 就可以放置在图片下方 ; 文本 span 样式为 : nav a span { /* 导航栏文本 设置为 块级元素 */ display...-- 链接放在 div 盒子 使用 a 标签包裹 img 标签 --> <img src=...Logo 盒子 图片宽度是 30 像素 高度没有给出 但是 宽高等比例缩放 高度也是 30 像素 */ width: 30px; /* 默认图片对齐方式是基线对齐 只要不是基线对齐...垂直居中 */ line-height: 44px; } .search { /* 中间部位搜索栏盒子内容 */ /* 子绝父相 该容器子容器需要绝对定位 因此父容器设置为相对定位

3.2K40
领券