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

为什么css网格中的子容器在水平方向上占100%,而在垂直方向上只占90%?

CSS网格中的子容器在水平方向上占100%,而在垂直方向上只占90%的原因是因为网格容器的默认行为是将剩余的空间分配给子容器,但是在垂直方向上存在一些特殊情况。

在CSS网格布局中,网格容器可以被分为行和列,每个单元格可以包含一个或多个子容器。当子容器没有指定具体的高度时,网格容器会根据子容器的内容自动调整高度。

在水平方向上,子容器默认会占满整个网格单元格的宽度,因为网格容器会自动将剩余的空间平均分配给子容器。这意味着子容器的宽度会自动扩展以填充整个单元格。

然而,在垂直方向上,子容器默认不会占满整个网格单元格的高度。这是因为在垂直方向上,网格容器会根据子容器的内容自动调整高度,但是会保留一部分空间作为网格行的间距。这个间距的大小通常由网格容器的属性和样式决定。

如果希望子容器在垂直方向上也占满整个网格单元格的高度,可以通过设置子容器的样式属性来实现。例如,可以使用height: 100%来指定子容器的高度为100%,这样子容器就会占满整个网格单元格的高度。

总结起来,CSS网格中的子容器在水平方向上占100%,而在垂直方向上只占90%是因为网格容器的默认行为是将剩余的空间分配给子容器,并且在垂直方向上会保留一部分空间作为网格行的间距。如果需要子容器在垂直方向上也占满整个网格单元格的高度,可以通过设置子容器的样式属性来实现。

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

相关·内容

【HarmonyOS之旅】基于ArkTS开发(二) -> UI开发之常见布局

通过线性容器Row和Column实现线性布局。Column容器内子组件按照垂直方向排列,Row组件中,子组件按照水平方向排列。 1.1.1 -> 线性布局的排列 线性布局的排列方向由所选容器组件决定。...通过space参数设置主轴(排列方向)上子组件的间距。达到各子组件在排列方向上的等间距效果。 通过alignItems属性设置子组件在交叉轴(排列方向的垂直方向)的对齐方式。...具体使用以及效果如下表所示: 属性名 描述 Row效果图 Column效果图 space - 横向布局中各子组件的在水平方向的间距 - 纵向布局中个子组件垂直方向间距 alignItems 容器排列方向的垂直方向上...,子组件在父容器中的对齐方式 justifyContent 容器排列方向上,子组件在父容器中的对齐方式 1.1.2 -> 自适应拉伸 在线性布局下,常用空白填充组件Blank,在容器主轴方向自动填充空白空间...当rowStart值与rowEnd值相同时,子组件只占一个网格。

18610

HarmonyOS4.0 Grid_GridItem容器组件详解

本章内容概要 Grid组件说明 网格容器,由“行”和“列”分割的单元格所组成,通过指定“项目”所在的单元格做出各种各样的布局。包含GridItem子组件。...GridItem 组件说明 网格容器中单项内容容器。 Grid属性讲解 columnsTemplate 设置当前网格布局列的数量,不设置时默认1列。...如果设置了columnsTemplate,Gird滚动方向为垂直方向,主轴方向为垂直方向,交叉轴方向为水平方向。...如果设置了rowsTemplate,Gird滚动方向为水平方向,主轴方向为水平方向,交叉轴方向为垂直方向。...rowsTemplate、columnsTemplate都不设置: 元素在layoutDirection方向上排布,列数由Grid的宽度、首个元素的宽度、minCount、maxCount、columnsGap

17300
  • 重学前端之BFC、IFC、FFC、GFC

    在 IFC 中,内联元素按照水平方向依次排列,当一行排不下时会进行换行处理,并且在垂直方向上,它们的对齐方式遵循一定的规则,比如基线对齐、顶部对齐、中部对齐等。...(要么是水平方向,要么是垂直方向),能让元素在容器内方便地调整位置、大小等布局属性,以适应不同的屏幕尺寸和设计需求。...布局特性及相关属性:主轴和交叉轴:在 FFC 中,首先要确定弹性容器的主轴(flex-direction 属性决定,取值可以是 row(水平从左到右)、row-reverse(水平从右到左)、column...对齐方式:和 FFC 类似,在网格布局中也有多种对齐方式来控制元素在网格单元格内以及整个网格容器内的对齐情况,比如 justify-items(控制元素在单元格内水平方向的对齐)、align-items...(控制元素在单元格内垂直方向的对齐)、justify-content(控制整个网格容器内网格内容在水平方向的对齐)、align-content(控制整个网格容器内网格内容在垂直方向的对齐)等属性,取值同样有

    18810

    低代码如何构建响应式布局前端页面

    而在后续的迭代中,活字格加入了粒度精确到行列的模式设置,通过对行列性质的修改,保证页面可以动态且精确的填充至整个展示屏幕中。 页面拉伸模式 在活字格中,可对全局或单个页面设置页面拉伸模式。...单个页面设置只在本页面生效,而全局的生效范围扩展到了整个应用。活字格为用户提供了五种拉伸模式,方便用户在不同的场景下进行选择: 无拉伸:页面在浏览器中不会进行拉伸,与设计原型保持一致。...水平拉伸:页面在不同浏览器中随着浏览器尺寸进行水平方向上的拉伸。 垂直拉伸:页面在不同浏览器中随着浏览器尺寸进行垂直方向上的拉伸。...双向拉伸:页面在不同浏览器中随着浏览器尺寸进行水平和垂直方向上的拉伸,使得在充满不同分辨率的浏览器时都具有较好的视觉效果。...网格(Grid)布局 网格布局(Grid)是CSS(层叠样式表,为网页添加页面样式的一种计算机语言)布局方案的一种,也是泛用性最广泛的一种。

    4K40

    IT课程 CSS基础 031_网格布局 Grid

    **网格线 (grid line)**:网格线是将网格容器划分为行和列的线。网格线可以是水平线或垂直线。 **网格列 (grid column)**:网格列是网格容器中垂直方向的线。...**网格行 (grid row)**:网格行是网格容器中水平方向的线。 常用属性 网格容器属性 网格容器具有以下属性用于控制网格布局: display: 设置网格容器的显示模式。...grid-column-start: 设置网格项在列中的起始位置。 grid-column-end: 设置网格项在列中的结束位置。 grid-row-start: 设置网格项在行中的起始位置。...它是 grid-column-start 和 grid-column-end 的简写。通过 grid-column,你可以更方便地定义网格项在水平方向上的位置和跨足的列数。...通过 grid-row,你可以更方便地定义网格项在垂直方向上的位置和跨足的行数。

    10610

    【前端转鸿蒙必看篇】:ArkUI的布局

    区别在于弹性布局默认能够使子组件压缩或拉伸。在子组件需要计算拉伸或压缩比例时优先使用此布局,可使得多个容器内子组件能有更好的视觉上的填充效果。...通过在子组件上设置锚点规则(AlignRules)使子组件能够将自己在横轴、纵轴中的位置与容器或容器内其他子组件的位置对齐。设置的锚点规则可以天然支持子元素压缩、拉伸、堆叠或形成多行效果。...列表(List)使用列表可以高效地显示结构化、可滚动的信息。在ArkUI中,列表具有垂直和水平布局能力和自适应交叉轴方向上排列个数的布局能力,超出屏幕时可以滚动。...、子元素占比控制能力。...网格布局可以控制元素所占的网格数量、设置子元素横跨几行或者几列,当网格容器尺寸发生变化时,所有子元素以及间距等比例调整。

    21520

    【Web前端】“弹性盒子”一维布局系统(补充)

    CSS 弹性盒子(Flexible Box Layout,简称 Flexbox)是 CSS3 中引入的一种布局模式,提供一种有效的方式来布局、对齐和分配容器内空间,特别是在动态和复杂的应用界面中。...弹性项目(Flex Items):弹性容器中的直接子元素,它们的布局和行为会受到弹性容器的控制。...二、指定元素的布局为 Flexible 要将元素的布局指定为弹性盒子,只需在 CSS 中为容器添加 ​​display: flex​​​。这告诉浏览器将该元素视为弹性容器。...然而,开发者可以使用 ​​flex-direction​​ 属性设置项目在容器中的排列方向,这个属性可以取以下值: row(默认值):项目在水平方向上从左到右排列。...row-reverse:项目在水平方向上从右到左排列。 column:项目在垂直方向上从上到下排列。 column-reverse:项目在垂直方向上从下到上排列。

    12410

    鸿蒙-元服务-坚果派-第二章 页面与布局

    列表(List) 使用列表可以高效地显示结构化、可滚动的信息。在ArkUI中,列表具有垂直和水平布局能力和自适应交叉轴方向上排列个数的布局能力,超出屏幕时可以滚动。...网格(Grid) 网格布局具有较强的页面均分能力、子元素占比控制能力。网格布局可以控制元素所占的网格数量、设置子元素横跨几行或者几列,当网格容器尺寸发生变化时,所有子元素以及间距等比例调整。...线性布局 线性布局(LinearLayout)是开发中最常用的布局,通过线性容器Row和Column构建。线性布局是其他布局的基础,其子元素在线性方向上(水平方向和垂直方向)依次排列。...布局子元素:布局容器内部的元素。 主轴:线性布局容器在布局方向上的轴线,子元素默认沿主轴排列。Row容器主轴为水平方向,Column容器主轴为垂直方向。 交叉轴:垂直于主轴方向的轴线。...布局子元素在排列方向上的间距 在布局容器内,可以通过【space】属性设置排列方向上子元素的间距,使各子元素在排列方向上有等间距效果。

    8910

    【移动端网页布局】流式布局案例 ⑦ ( 水平排列的图片链接 2 | 浮动设置 | 盒子模型类型设置 | 结构伪类选择器 )

    */ line-height: 44px; } .search { /* 中间部位搜索栏盒子内容 */ /* 子绝父相 该容器的子容器需要绝对定位 因此父容器设置为相对定位...*/ width: 100%; } /* 设置水平方向上 连续排列的图片链接 */ .brand { /* 设置圆角后 超过圆角的图片不再显示 */ overflow:...div 盒子左浮动 这样这些盒子可以在水平方向上紧密排列 */ float: left; /* 要在水平方向上放置 3 个 为其设置 1/3 的宽度即可 */...width: 33.33%; } .brand div img { /* 设置图片链接中的图片 在水平方向上充满父容器即可 */ width: 100%; } /* 多排按钮导航栏...设置为 块级元素 */ display: block; } /* 设置水平方向上 连续排列的图片链接 */ .news { /* 设置父容器顶部外边距 20 像素 */

    2.3K40

    鸿蒙应用开发-初见:ArkUI

    ,子视图上报给父视图自身大小的值是指 组件内容区的大小ArkUI中常用布局容器如何选择使用哪种布局线性布局(Row/Column)线性布局的子元素在线性方向上(水平方向和垂直方向)依次排列线性布局容器包括...Column容器内子元素按照垂直方向排列,Row容器内子元素按照水平方向排列主轴线性布局容器在布局方向上的轴线,子元素默认沿主轴排列。Row容器主轴为横向,Column容器主轴为纵向。...通过justifyContent属性设置子元素在容器主轴上的排列方式默认相邻子元素是紧贴着的,也可以通过space设置子元素间的间距Column容器内子元素在主轴上的排列主轴方向:垂直向下Column(...Row容器内子元素在垂直方向上的排列Row() {...}.alignItems(VerticalAlign.Top)VerticalAlign.Top:子元素在垂直方向顶部对齐VerticalAlign.Center...:子元素在垂直方向居中对齐VerticalAlign.Bottom:子元素在垂直方向底部对齐层叠布局(Stack)层叠布局主要用于实现基于Z轴的布局,容器中的子元素(子组件)依次入栈,后一个子元素覆盖前一个子元素

    27810

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

    一、连续排列的链接图片样式及核心要点 1、实现效果 实现如下效果 , 在下面的布局中 , 水平放置 3 个图片链接 ; 每个图片链接 占 宽度的 1/3 ; 2、标签结构设置 将布局中的 三个 链接图片..., 三个链接图片水平排列在一起 , 并且中间没有缝隙 , 说明这是使用 浮动 进行设置的 , 为父容器的三个子元素都设置 左浮动 , 就可以实现上述效果 ; 设置浮动后 , 还需要设置子元素的宽度 ,...{ /* 设置 .brand 父容器下的 div 盒子左浮动 这样这些盒子可以在水平方向上紧密排列 */ float: left; /* 要在水平方向上放置 3..., 会按照宽高比等比例缩放 ; 设置样式为 : .brand div img { /* 设置图片链接中的图片 在水平方向上充满父容器即可 */ width: 100%; } 二、完整代码实例...width: 33.33%; } .brand div img { /* 设置图片链接中的图片 在水平方向上充满父容器即可 */ width: 100%; } 3、展示效果

    3.6K20

    HarmonyOS开发学习(3)–页面开发

    alignItems Column容器的主轴是垂直方向,交叉轴是水平方向,其参数类型为HorizontalAlign(水平对齐),HorizontalAlign定义了以下几种类型: Start:设置子组件在水平方向上按照起始端对齐...Center(默认值):设置子组件在水平方向上居中对齐。 End:设置子组件在水平方向上按照末端对齐。...Row容器的主轴是水平方向,交叉轴是垂直方向,其参数类型为VerticalAlign(垂直对齐),VerticalAlign定义了以下几种类型: Top:设置子组件在垂直方向上居顶部对齐。...: string | number}) Column和Row容器的接口都有一个可选参数space,表示子组件在主轴方向上的间距。...Horizontal:子组件ListItem在List容器组件中呈横向排列。

    1.1K10

    vh 存在问题?试试动态视口单位之 dvh、svh、lvh

    根因在于: 很多浏览器,在计算 100vh 的高度的时候,会把地址栏等相关控件的高度计算在内2 同时,很多时候,由于会弹出软键盘等操作,在弹出的过程中,100vh 的计算值并不会实时发生变化!...其实,在之前也有 vi 和 vb 两个单位: vi:vi 代表 Viewport Inline,代表文档的内联方向。在水平书写方向上,这对应于视口的宽度,而在垂直书写方向上,这表示视口的高度。...这与 vi 水平书写方向相反,这将对应于视口高度,而在垂直文档中,这将表示视口的宽度。 因此,vi 和 vb 属于两个逻辑单位。...CSS 的更新迭代一直在快速持续,很多内容还是有必要不断了解学习,在不久的将来就能很快应用在业务中。...此外,除了动态视口外,其实 CSS 还更新了与容器大小相关的相对单位 -- 譬如 cqw 和 cqh。 cqw:表示容器查询宽度(Container Query Width)占比。

    2K20

    【CSS3——页面布局】画一只考拉(蓝桥杯真题-2341)【合集】

    背景介绍 CSS3 的 Flex 弹性布局和 Grid 网格布局已经成为前端页面排版的主流选择。 本次挑战将使用这两种布局方式来画一只考拉。...目标效果 请根据 styles.css 文件中的提示和要求添加所需的 CSS 代码,完整地画出一只如下效果的考拉: 创造一个网格布局,6 个纵列(column):前后两列两等分(可用 fr 代表一份...详细解释 全局样式: html, body:设置整个页面的背景颜色为 #f8d8ab,宽度和高度分别为视口的宽度和高度。使用 Flexbox 布局将页面内容在水平和垂直方向上居中显示。...容器样式: .container:使用 Flexbox 布局,设置子元素垂直排列,并在水平方向上居中对齐。....ear:设置耳朵的宽度和高度为 250px,通过 border-radius: 50% 将其变为圆形,背景颜色为 #738394。使用 Flexbox 布局将内部元素在水平和垂直方向上居中显示。

    6700

    CSS Grid 那些鲜为人知的内幕

    网格线 ❝网格线是构成网格结构的分割线。它们可以是垂直的(列网格线)或水平的(行网格线),并位于行或列的两侧。 ❞ 在这里,黄色线是列网格线的一个例子。...(这里我们就不贴代码了) 而在其他任何布局模式中,创建这样的区块的唯一方法就是「添加更多的 DOM 节点」。...其实,网格容器仍然使用流式布局,而流式布局中的块级元素会垂直增长以容纳其内容。「只有子元素使用网格布局进行排列」。...到目前为止,我们一直在讨论如何在水平方向上对齐内容。...只使用两个 CSS 属性,我们就可以将子元素水平和垂直居中于容器中: 正如我们所学到的,justify-content 控制列的位置。align-content 控制行的位置。

    16610

    《前端技术基础》第03章 CSS 布局【合集】

    它有四个常见的值,以下为您详细介绍: 4.1 水平从左到右排列:row 项目在弹性容器内水平排列,从左到右依次分布。...:column 项目在弹性容器内垂直排列,从上到下依次分布。...与 Flexbox 布局(一维布局)不同,Grid通过将容器元素设置为display:grid,可以同时在水平和垂直方向上进行布局控制,为我们提供了更灵活的布局能力。...:justify-content align-items用于设置整个网格在容器水平方向上的对齐方式,取值包括start(左对齐)、end(右对齐)、center(居中对齐)、space-around(项目周围均匀分布空间...:align-content align-content 用于设置整个网格在容器垂直方向对齐方式,取值与 justify-content 一致,用于控制网格在垂直方向分布。

    4500

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

    再进一步,我们可以让图片完美居中对齐(无论是水平还是垂直) 如上所示,这可以让图片在 .gallery 内水平和垂直都居中。 你可以通过 Flexbox 的布局方式随意选择你想要的对齐选项。...示例三:如何使用 Flexbox 创建网格布局 在这个例子中,我们要探讨整体的 CSS 框架概念,这是很重要的一点。 什么是网格布局? 网格是用来构建内容的一系列水平垂直相交引导线。 ?...一系列水平垂直相交引导线 如果你对 Bootstrap 这样的 CSS 框架比较熟悉,那你之前一定使用过网格布局。 你所掌握的内容可能不一样,但这个例子会涵盖不同的网格布局类型。...水平网格布局中的元素是其他的两倍或三倍 实现方式很简单。...一行三个元素居中嵌套排列在较大的元素里 你可以在这里查看最终的布局效果。 更多网格布局 当你可以用 Flexbox 垂直网格甚至更复杂的参数实现好看的网格构造时,就可以把这个很好的工具用于工作。

    4.5K20

    【CSS3】CSS3 3D 转换示例 - 3D 导航栏示例 ( 列表设置 | 透视视图 | 过渡动画 | 3D 呈现样式 | 鼠标移动到控件上方效果 | 设置两个子盒子模型的效果 )

    transition: all 0.5s; 上述代码 告诉浏览器 该 盒子模型 及 子盒子模型 所有 可过渡 的属性值在 0.5 秒内平滑地改变 ; 设置 3D 呈现样式 盒子模型 的 父容器 和 子容器...box:hover 样式 ; 设置两个子盒子模型的效果 父容器中设置 相对定位 , 根据 子绝父相 原则 , 子盒子使用了绝对定位 , 父盒子就要使用相对定位 ; 第一个子容器 显示在正面 , 为了保证...position: relative; /* 宽度 和 高度 占父容器 100% */ width: 100%; height:...*/ color: #fff; /* 设置文字在盒子中水平对齐 */ text-align: center;.../* 设置文字在盒子中垂直对齐 */ line-height: 100px; } .box div:first-child {

    21010

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

    100% , 高度也不需要设置 , 设置自适应即可 ; 具体控制每行显示多少个元素 , 需要进行精确的计算 , 每行有 5 个元素 , 每个元素占宽度的 20% , 这个计算必须精准到 1 像素 , 如果不精确...*/ line-height: 44px; } .search { /* 中间部位搜索栏盒子内容 */ /* 子绝父相 该容器的子容器需要绝对定位 因此父容器设置为相对定位...*/ width: 100%; } /* 设置水平方向上 连续排列的图片链接 */ .brand { /* 设置圆角后 超过圆角的图片不再显示 */ overflow:...div 盒子左浮动 这样这些盒子可以在水平方向上紧密排列 */ float: left; /* 要在水平方向上放置 3 个 为其设置 1/3 的宽度即可 */...width: 33.33%; } .brand div img { /* 设置图片链接中的图片 在水平方向上充满父容器即可 */ width: 100%; } /* 多排按钮导航栏

    3.3K40
    领券