grid布局中网格被拉伸的问题

其实所有的元素被拉伸的问题都可以归咎于宽高的不确定

.content {
				display: grid;
				gap: 15rpx;
				grid-template-columns: repeat(3, 1fr);
			}

这种布局中出现了第一和第二列被挤压,第三列被拉宽的问题。

经过排查发现是第三个元素的图片未设置宽高,设置宽高之后能够正常三列等宽显示。

那么有没有办法在不方便设置元素宽高的情况下也可以解决这个显示异常的情况呢?

直接写死宽度是一种方法:

.content {
				grid-template-columns: 200px 200px 200px;
			}

但这种情况我们用的比较少,更多时候还是希望布局可以自适应宽度

.content {
				grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
				// 或者
				grid-template-columns: repeat(3, minmax(0, 1fr));
				// 或者
				grid-template-columns: repeat(3, 33%);
			}

原理仍然是写定了宽度,但只是设定最小和最大值,相当于设定了一定的元素可拉伸的宽高范围。
33%的限制在于有padding或者gap之类占用宽高的属性时可能会溢出container。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值