CSS居中问题

通常的居中方式比较好处理,这里遇到的问题是一左一中 ,这里用两种方式去布局

1. flex布局 

这里主要是靠红线部分的两句 flexDirection是设置成横向排列, justFyContent:'space-between'是左中右布局  但是这里的情况只有两个子view  而且是要一左一中  所以再加个view占位  这样就可以实现了

 

2. 绝对布局 

如果是用绝对布局,就需要把flex的属性去掉  否则布局无效

这里需要单独对子控件设置属性  icon绝对布局 文字居中 效果如下

但是可以看到明显的一个问题  用绝对布局 父布局无法被子view的高度撑开 所以如果用这种方式 需要手动设置父view的高度

 

### CSS 实现页面元水平垂直居中的多种方案 #### 使用伪元与 `margin` 一种实现方法是在父级容器 `.container` 上应用相对定位并设定视口高度。接着,在该容器上定义一个伪元 `::before`,其内容为空字符串,显示模式设为行内块状元,并占据整个父容器的高度,同时保持中间对齐。目标子元也应配置为行内块状元并与之垂直对齐,利用自动外边距达到水平中心位置的效果[^1]。 ```css .container { position: relative; height: 100vh; /* 视口高度 */ } .container::before { content: ""; display: inline-block; height: 100%; vertical-align: middle; } .centered-element { display: inline-block; vertical-align: middle; margin: 0 auto; /* 水平居中 */ } ``` #### 利用 Flexbox 布局模型 对于更现代的方式来说,可以采用弹性盒子布局(Flexbox)。只需给定父节点 `display: flex; justify-content:center; align-items:center;` 属性组合即可轻松完成两个方向上的精准定位[^2]。 ```css .parent { display: flex; justify-content: center; align-items: center; min-height: 100vh; /* 至少覆盖全屏高 */ } .child { /* 子项样式 */ } ``` #### 表格单元格属性法 另外还有一种基于表格特性的技巧——将父层设置成具有表格单元格行为的对象 (`display: table-cell`) 并启用垂直居中选项(`vertical-align:middle`) 来处理内部项目的位置调整问题[^3]。 ```css .table-container { display: table-cell; text-align: center; vertical-align: middle; width: 100vw; height: 100vh; } .item-inside-table { /* 被居中的元 */ } ``` 以上三种都是常见而有效的CSS技术用于确保网页组件能够在任意大小屏幕上都处于视觉焦点处。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值