transform的translate属性

在制作登录表单时遇到父盒子上边距塌陷的问题。通过给父盒子添加边框可以解决,但今天学习了一种新方法:使用CSS的绝对定位结合transform的translate属性。通过将子盒子向下向右移动自身宽高的50%,无需计算即可实现对齐,简化了代码并避免了算术运算。
摘要由CSDN通过智能技术生成

今天在练习做登录表单的时候,发现了一个问题,放上表单后,父盒子上边距发生了塌陷。代码如下:

.bg-img {
	position: relative;
	height: 100vh;
	background: url(bgimg.jpg);
	background-size: cover;
	background-position: center;
}
.bg-img::after {
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,.7);
}
.login-box {
	margin: 300px auto;
	width: 300px;
	background-color: rgba(0,0,0,.3);
	padding: 40px 25px;
	box-shadow: 0 5px 5px 5px rgba(255,255,255,.3);
}

当然解决方法很多,一般给父盒子加个上边框可以解决,例如:

.bg-img {
	position: relative;
	height: 100vh;
	background: url(bgimg.jpg);
	background-size: cover;
	background-position: center;
	border-top: 1px solid transparent;
}

不过今天学习了一种新的方法,当定位login-box(子盒子)时,不设置上边距,用绝对定位,向下向右移动50%,在回减盒子宽度高度的50%,像这样:

.login-box {
	position: absolute;
	top: 50%;
	left: 50%;
	margin
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值