CSS 常用的三种居中定位布局

嗨,我是小路。今天主要和大家分享的主题是""。

一、三种常用布局

1.子绝父相 margin 居中

注意:父级相对定位,子级绝对定位,并且子级margin-left,margin-top是负值,为宽度、高度的一半。

css 复制代码
/** 子绝父相 margin 居中 */
	.father{
		position: relative;
		width: 500px;
		height: 500px;
		margin: 0 auto;
		border: 1px solid;
		.son{
			position: absolute;
			left: 50%;
			top: 50%;
			margin-left: -100px;//负值,宽度的一半
			margin-top: -50px;//负值,高度的一半
			width: 200px;
			height: 100px;
			background: yellow;
		}
	}

2.子绝父相 transform 居中

注意:父级相对定位,子级绝对定位,并且子级transform:translate(-50%,-50%),为宽度、高度的一半。

css 复制代码
/** 子绝父相 transform 居中 */
	.father1{
		position: relative;
		width: 500px;
		height: 500px;
		margin: 0 auto;
		border: 1px solid;
		.son1{
			position: absolute;
			left: 50%;
			top: 50%;
			transform: translate(-50%,-50%);//负值,横向 竖向移动一半距离
			width: 200px;
			height: 100px;
			background: blue;
		}
	}

3.弹性盒子flex

注意:设置盒子为弹性盒子,主轴和侧轴必须是center。子级任意高宽,不超出父级即可。

css 复制代码
/** flex 居中 */
	.father2{
		display: flex;
		justify-content: center;
		align-items: center;

		width: 500px;
		height: 500px;
		margin: 0 auto;
		border: 1px solid;
		.son2{
			
			width: 200px;
			height: 100px;
			background: green;
		}
	}

目前三种类型中,用的最多的布局是flex。

嗨,我是小路。如果这篇文章对你有帮助,记得【点赞】+【关注】哟。

相关推荐
2503_928411561 小时前
12.4 axios的二次封装-深拷贝
前端·javascript·vue.js
你真的可爱呀4 小时前
uniapp+vue3项目中的常见报错情况以及解决方法
前端·vue.js·uni-app
差点GDP8 小时前
模拟请求测试 Fake Rest API Test
前端·网络·json
酒尘&9 小时前
Hook学习-上篇
前端·学习·react.js·前端框架·react
houyhea9 小时前
从香港竹脚手架到前端脚手架:那些"借来"的发展智慧与安全警示
前端
哈哈~haha10 小时前
Step 14: Custom CSS and Theme Colors 自定义CSS类
前端·css·ui5
Ndmzi10 小时前
Matlab编程技巧:自定义Simulink菜单(理解补充)
前端·javascript·python
我命由我1234510 小时前
VSCode - VSCode 修改文件树缩进
前端·ide·vscode·前端框架·编辑器·html·js
SoaringHeart11 小时前
Flutter组件封装:验证码倒计时按钮 TimerButton
前端·flutter
San30.11 小时前
深入理解 JavaScript OOP:从一个「就地编辑组件」看清封装、状态与原型链
开发语言·前端·javascript·ecmascript