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

CSS使子兄弟在100%宽度的父级中具有相同的宽度和高度(正方形)

要实现子兄弟在100%宽度的父级中具有相同的宽度和高度(正方形),可以使用CSS的flexbox布局和伪元素来实现。

首先,需要将父级容器设置为flex布局,通过设置display属性为flex,可以使子元素自动排列在一行或一列上。

然后,给父级容器设置宽度为100%。

接下来,给子元素设置flex属性为1,这样子元素会平均分配父级容器的宽度。

为了使子元素具有相同的高度,可以使用伪元素来撑开子元素的高度。给子元素添加::before伪元素,并设置content属性为空字符串,然后设置flex属性为1,这样伪元素会自动填充子元素的高度。

最后,为了使子元素呈现正方形的形状,可以通过设置padding-bottom属性为100%来实现。这样子元素的高度将与宽度相等。

以下是示例代码:

HTML:

代码语言: txt
复制
<div class="parent">
  <div class="child"></div>
  <div class="child"></div>
  <div class="child"></div>
</div>

CSS:

代码语言: txt
复制
.parent {
  display: flex;
  width: 100%;
.child {
  flex: 1;
  position: relative;
.child::before {
  content: "";
  display: block;
  padding-bottom: 100%;
/* 可以根据需要添加其他样式 */

这样,子兄弟元素就可以在100%宽度的父级容器中具有相同的宽度和高度(正方形)了。

关于CSS的flexbox布局和伪元素的详细介绍和用法,可以参考腾讯云的CSS Flexbox布局和CSS伪元素相关文档。

腾讯云CSS Flexbox布局文档链接:https://cloud.tencent.com/document/product/1212/45136

腾讯云CSS伪元素文档链接:https://cloud.tencent.com/document/product/1212/45137

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

相关· 内容

CSS布局(二) 盒子模型属性

盒子模型的属性 宽高width/height   在CSS中,可以对任何块级元素设置显式高度。   ...所以,普通元素的margin百分比相对于块级父级元素的width,定位元素的margin百分比相对于定位父级的width margin可以设置为负值,margin和宽高支持auto,以及margin具有非常奇怪的重叠特性...;  2、父级元素和第一个或最后一个子元素,父子级的margin重叠又叫margin传递 .box{ background-color...但实际上,它是在很大的作用的, 所以,我们要善用重叠,可以在列表项中同时使用margin-top和margin-bottom。...这样,使页面结构更具有健壮性,最后一个元素移除或位置调换,都不会破坏原生的布局 2.auto   只有width/height和margin可以设置auto。

1.9K 7 0

HTML+CSS高级

给父级元素加上高度,让其在视觉效果上呈现正常     --》扩展性不好,假如项目高度不固定(如瀑布流布局),此时没法由子元素内容确定父元素高度           2.2     给父级加浮动。    ...               解决办法1:子元素宽度不超过父级3px           1.9     父级包不住relative的子级                解决办法:针对IE6、7给父级加上...relative           1.10     IE6下绝对定位元素的父级宽度是奇数,则该子元素right和bottom有1px偏差                解决办法:避免父级宽度出现奇数...给父级元素加上高度,让其在视觉效果上呈现正常     --》扩展性不好,假如项目高度不固定(如瀑布流布局),此时没法由子元素内容确定父元素高度           2.2     给父级加浮动。    ...relative           1.10     IE6下绝对定位元素的父级宽度是奇数,则该子元素right和bottom有1px偏差                解决办法:避免父级宽度出现奇数

5.9K 6 1
  • 前端课程——浮动

    理解好文档流的概念有助于学习CSS样式中的浮动和定位两块内容。 将HTML页面中的元素自,上向下分成一行一行,并在每行中按从左至右的挨次排放元素,即为文档流。...当前元素设置浮动后,之影响当前元素后边的元素 所有元素都设置为浮动的话,块级元素排列顺序变为水平方向的排列, 块级元素的浮动 块级元素默认的宽度和高度 宽度是父级元素宽度的100% 高度是0或者所有后代元素高度之和...设置为浮动后 宽度默认是0或者所有后代元素宽度之和 高度默认是0或者所有后代元素高度之科 多个块级元素都设置为浮动后->垂直方向排列变为水平方向排列 如果占满父级元素宽度的100%后,会自动换行 内联元素...行内块级元素 行内块级元素设置为浮动后,元素之间的空白间隙被取消 浮动的特殊情况 父级与子级之间的浮动 为子级元素设置浮动不能超出父级元素的范围(与父级元素浮不浮动无关) 兄弟同时设置浮动 如果兄弟关系的两个元素...子级元素设置浮动 解决方案: 为父级设置高度(不推荐) 块级格式化上下文(BFC) 开启方式如下几种: 将元素设 置为浮动(元素的CSS样式属性float值不为none ) 将元素

    890 3 1

    掌握这些CSS知识点,Coding如飞!

    高度100%并未铺满屏幕 代码&效果:https://codepen.io/DYBOY/embed/RwoJKRP block类的父级(包含块)是body,body在未设置值的时,height值为auto...如果任一长度为零,则角为正方形,而不是圆角。 水平半径的百分比是指边框的宽度,而垂直半径的百分比是指边框的高度。.../post/6960866014384881671 2.3.1 实例&解决方案 2.3.1.1 父子高度塌 父级margin,子级的margin-top无效 代码&演示:https://codepen.io...line-height高度,line-height规定的是行高最小的的高度 line-height是相对单位时,line-height具有继承性,其子元素如果没有设置line-height,那么子元素的行高为父元素计算所得的行高值...七、CSS选择器 7.1 通用选择器 .a.b:(无空格)当a和b在同一标签类名中同时出现才选择 .a .b:(有空格)选择a的所有后代b .a>.b:(>)选择a的子代b .a, .b:(,)a与b样式相同

    1K 2 0

    【面试题】104道 CSS 面试题,助你查漏补缺(下)

    •在无损压缩的情况下,相同质量的WebP图片,文件大小要比PNG小26%; •在有损压缩的情况下,具有相同图片精度的WebP图片,文件大小要比JPEG小25%~34%; •WebP图片格式支持图片透明度...对于普通文档流中的元素,百分比高度值要想起作用,其父级必须有一个可以生效的高度值。...在CSS中,“行距”分散在当前文字的上方和下方,也就是即使是第一行文字,其上方也是 有“行距”的,只不过这个“行距”的高度仅仅是完整“行距”高度的一半,因此,也被称为“半行距”。...(5)每个层叠上下文是自成体系的,当元素发生层叠的时候,整个元素被认为是在父层叠上下文的层叠顺序中。 层叠上下文的创建: (1)页面根元素天生具有层叠上下文,称为根层叠上下文。...父级元素设置左右的padding,三列均设置向左浮动,中间一列放在最前面,宽度设置为父级元素的宽度,因此后面两列都被挤到了下一行,通过设置margin负值将其移动到上一行,再利用相对定位,定位到两边。

    2.5K 4 0

    104 道 CSS 面试题 - 知识点总结

    •高度为0并且最小高度也为0,不包含常规文档流的子元素,并且自身没有建立新的BFC的元素的margin-top和margin-bottommargin 合并的3种场景: (1)相邻兄弟元素margin...解决办法:•设置块状格式化上下文元素(BFC) (2)父级和第一个/最后一个子元素的margin合并。...第三种是高度为auto的父元素的margin-bottom和子元素的margin-bottom发生重叠。它们发生重叠一个是因为它们相邻,一个是因为父元素的高度不固定。...可维护性、健壮性: (1)将具有相同属性的样式抽离出来,整合并通过class在页面中进行使用,提高css的可维护性。 (2)样式与内容分离:将css代码定义到外部css中。...在CSS中,“行距”分散在当前文字的上方和下方,也就是即使是第一行文字,其上方也是有“行距”的,只不过这个“行距”的高度仅仅是完整“行距”高度的一半,因此,也被称为“半行距”。

    4.4K 1 0

    104道 CSS 面试题,助你查漏补缺

    •高度为0并且最小高度也为0,不包含常规文档流的子元素,并且自身没有建立新的BFC的元素的margin-top 和margin-bottom margin合并的3种场景: (1)相邻兄弟元素margin...解决办法: •设置块状格式化上下文元素(BFC) (2)父级和第一个/最后一个子元素的margin合并。...第三种是高度为auto的父元素的margin-bottom和子元素的margin-bottom发生重叠。它们发生重叠一个是因为它们相 邻,一个是因为父元素的高度不固定。...可维护性、健壮性: (1)将具有相同属性的样式抽离出来,整合并通过class在页面中进行使用,提高css的可维护性。 (2)样式与内容分离:将css代码定义到外部css中。...在CSS中,“行距”分散在当前文字的上方和下方,也就是即使是第一行文字,其上方也是 有“行距”的,只不过这个“行距”的高度仅仅是完整“行距”高度的一半,因此,也被称为“半行距”。

    1.8K 1 0

    104道 CSS 面试题,助你查漏补缺(下)

    •在无损压缩的情况下,相同质量的WebP图片,文件大小要比PNG小26%; •在有损压缩的情况下,具有相同图片精度的WebP图片,文件大小要比JPEG小25%~34%; •WebP图片格式支持图片透明度...对于普通文档流中的元素,百分比高度值要想起作用,其父级必须有一个可以生效的高度值。...在CSS中,“行距”分散在当前文字的上方和下方,也就是即使是第一行文字,其上方也是 有“行距”的,只不过这个“行距”的高度仅仅是完整“行距”高度的一半,因此,也被称为“半行距”。...(5)每个层叠上下文是自成体系的,当元素发生层叠的时候,整个元素被认为是在父层叠上下文的层叠顺序中。 层叠上下文的创建: (1)页面根元素天生具有层叠上下文,称为根层叠上下文。...父级元素设置左右的padding,三列均设置向左浮动,中间一列放在最前面,宽度设置为父级元素的宽度,因此后面两列都被挤到了下一行,通过设置margin负值将其移动到上一行,再利用相对定位,定位到两边。

    2.4K 3 0

    CSS3 圆角边框 阴影 浮动详解

    CSS3 圆角边框、阴影、浮动详解 圆角边框: 在 CSS3 中,新增了圆角边框样式,这样我们的盒子就可以变圆角了。 border-radius 属性用于设置元素的外边框圆角。...语法: border-radius:length; 参数值可以为数值或百分比的形式 如果是正方形,想要设置为一个圆,把数值修改为高度或者宽度的一半即可,或者直接写为 50% 如果不是正方形,这种设置会生成一个圆角矩形...也就是说如果行内元素有了浮动,则不需要转换块级/行内块元素就可以直接给高度和宽度。...如果块级盒子没有设置宽度,默认宽度和父级一样宽,但是添加浮动后,它的大小根据内容来决定 浮动的盒子中间是没有缝隙的,是紧挨着一起的 1.6 浮动元素经常和标准流父级搭配使用 为了约束浮动元素位置,我们页面布局一般采取的策略是...: 先用标准流的父元素排列上下位置, 之后内部子元素采取浮动排列左右位置.

    1.7K 2 0

    CSS 基础系列:从清除浮动和margin塌陷问题谈BFC

    父元素高度塌陷的情况:子元素浮动后脱离了文档流,未设置高度的父元素在形式上表现为 0 高度,设置了 clear:both 的元素为了满足其左右两边没有浮动元素的这个条件,只能自身下移,从而带动了父元素高度的撑开...如果父元素的宽度足以包含这两个子元素的宽度之和,则子兄弟元素和子浮动元素并排。如图: image.png 如果父元素的宽度不足以包含这两个子元素的宽度之和,则子兄弟元素会出现在子浮动元素的下面。...这是 W3C CSS2.1 规范中的一个概念。它是页面中的一块渲染区域,并且有一套渲染规则,它决定了其子元素将如何定位,以及和其他元素的关系、相互作用。...除了最常见的 CSS2.1 中的 BFC 和 IFC 之外,CSS3 中还增加了 GFC 和 FFC。 4.1.1 BFC: 前面已经说过了。...在 CSS2.1 中,有三种定位方案 ———— 普通流、浮动和绝对定位,下面分别对这三种布局简略说明一下: 普通流(Normal flow) 在普通流中,盒一个接着一个排列; 在块级格式化上下文里面,它们竖着排列

    2.5K 1 0

    【愚公系列】2023年03月 其他-Web前端基础面试题(CSS_42道)

    38、为什么css放在顶部而js写在后面? 39、z-index属性在什么情况下会失效 40、Flex 布局父级容器属性和子级项目属性有哪些?...在标准模式下的盒模型:盒子总宽度/高度=width/height+padding+border+margin 在怪异模式下的盒模型下,盒子的总宽度和高度是包含内边距padding和边框border宽度在内的...),而它所占据的空间位置仍然存在,也即是说它仍然具有高度,宽度等属性值。...重叠的结果是什么? 外边距重叠就是 margin- collapse在CSS中,相邻的两个盒子(可能是兄弟关系也可能是祖先关系)的外边距可以结合成一个单独的外边距。...解决:float去除,改为display:inline-block; 40、Flex 布局父级容器属性和子级项目属性有哪些?

    3.1K 2 0

    css必知的几个底层知识和技巧

    在介绍完问题学习法之后,进入我们今天的主题,接下来我会介绍css的一些底层的知识和比较诡异的现象,借此来让大家对css有更深入的理解。...一.css尺寸 1.首选最小宽度–实现复杂图形效果 在css中,图片和文字的权重远大于布局,因此当width:0时表现出来的宽度就是“首选最小宽度”。...2.2.子元素宽度设为100%时的奇怪现象原理探究 父元素的宽度 = 图片宽度 + 文字内容宽度 浏览器渲染原理:先下载文档内容,加载头部样式资源,然后按从上到下、自外而内的顺序渲染dom内容。...本例的现象产生的原因就是:当渲染到父元素时,子元素的width:100%并没有渲染,宽度就是图片加文字内容的宽度;等渲染到文字这个子元素的时候,父元素的宽度已经固定,此时的width:100%就是以固定好的父元素的宽度...box尺寸时触发滚动条显示 2.margin合并条件 块级元素,但不包含浮动和绝对定位元素 在默认文档流下只出现在垂直方向 margin合并的三种场景 相邻兄弟元素 父级和第一个/最后一个子元素 *

    2.1K 2 0

    【云+社区年度征文】2020一网打尽CSS世界

    在css世界中,内联元素极为重要,涉及的css属性也非常多,这些属性往往具有继承特性! 内联盒模型.png 内容区域:只与字号和字体有关,与行高无关!...>helloworld 包含块:如上述标签 幽灵空白节点:在HTML5文档声明中,内联元素的所有解析和渲染表现就如同每个行框盒子的前面有一个“空白节点”,同时具有该元素的字体和行高属性的...,就算父级元素width为auto,其百分比值也是支持的;对于height属性,如果父级元素为auto,只要子元素在文档流中,其百分比值完全被忽略掉!...替换元素尺寸从内而外分为3类:固有尺寸(源本身的宽度和高度)、HTML尺寸(HTML标签的width和height属性)和CSS尺寸(CSS中的widht和height以及max-/min-)其优先级为...父级和第一个/最后一个子元素; 空块级元素; margin合并的意义:在页面中任何地方嵌套或直接放入任何裸,都不会影响原来的块状布局。

    5K 1 1

    前端面试之CSS重点概念精讲

    padding 和 border 值 更改盒模型 CSS 中的 box-sizing 属性定义了引擎应该如何计算一个元素的「总宽度和总高度」 box-sizing: content-box|border-box...❞ CSS3中,z-index已经并非只对定位元素有效,flex盒子的「子元素」也可以设置z-index属性。...,只需要考虑后代元素 每个层叠上下文是自成体系的,当元素发生层叠的时候,整个元素被认为是在父层叠上下文的层叠顺序中 层叠上下文的创建(3类) 由一些CSS属性创建 「天生派」 「页面根元素天生具有层叠上下文...」--正确的解法是把子元素的z-index设置为负数,这样父元素是一个块级元素,z-index的子元素会在块级元素之下,就可以实现我们想要的效果。...的值为absolute或fixed 防止margin重叠 将位于同一个BFC的元素,分割到不同的BFC中 高度塌陷 --- 「计算BFC的高度时,浮动子元素也参与计算」 子元素浮动 父元素

    2.4K 3 0

    前端基础篇之CSS世界

    对于内联元素,width: auto则呈现出包裹性,即由子元素的宽度决定。 无论内联元素还是块级元素,height: auto都是呈现包裹性,即高度由子级元素撑开。...但是父元素设置height: auto会导致子元素height: 100%百分比失效。 流体布局之下,块级元素的宽度width: auto是默认撑满父级元素的。...css选择器权重列表如下: 在css中,!important的权重相当的高,但是由于宽高会被max-width/min-width覆盖,所以!important会失效。 width: 100px!...: 0 -100px; 此时div元素的宽度是比父级元素的宽度大200px的。...块级元素的垂直方向会发生margin合并,存在以下三种场景: 相邻兄弟元素之间margin合并; 父元素margin-top和子元素margin-top,父元素margin-bottom和子元素margin-bottom

    2.1K 5 0

    建议收藏!总结了42种前端常用布局方案

    作者:一碗周 本文已授权转载于:https://juejin.cn/post/7028962991345254407 对 CSS 布局掌握程度决定你在Web开发中的开发页面速度。...使中间自适应的宽度为父级容器减去两个定宽的列 */ width: calc(100%-400px); .right { /* 2....使中间自适应的宽度为父级容器减去两个定宽的列 */ width: calc(100%-400px); /* 3....使用calc函数实现 使用 calc 函数实现的方式会比较简单,中间的容器最少高度为视口宽度的100% - 头部和底部两部分的高度即可完成该功能。...实现CSS代码如下: .container { /* 这里的 中间 部分的容器最少为视口宽度的 100% - 头部和底部两部分的高度即可完成该功能 */ min-height: calc

    4.2K 3 0

    建议收藏!总结了 42 种前端常用布局方案

    对 CSS 布局掌握程度决定你在Web开发中的开发页面速度。随着Web技术的不断革新,实现各种布局的方式已经多得数不胜数了。...使中间自适应的宽度为父级容器减去两个定宽的列 */ width: calc(100%-400px); .right { /* 2....使中间自适应的宽度为父级容器减去两个定宽的列 */ width: calc(100%-400px); /* 3....使用calc函数实现 使用 calc 函数实现的方式会比较简单,中间的容器最少高度为视口宽度的100% - 头部和底部两部分的高度即可完成该功能。...实现CSS代码如下: .container { /* 这里的 中间 部分的容器最少为视口宽度的 100% - 头部和底部两部分的高度即可完成该功能 */ min-height: calc

    4.2K 3 0