前端开发---页面布局解决方案1

1、水平布局

.parent与.child元素宽度和高度不给出

1、默认情况下

<div class="parent">
	<div class="child">Children</div>	
</div>

 

2、inline-block +text-align情况下

.parent{text-align: center;}
.child{display: inline-block;}

 

特点:不兼容IE6、7,兼容性好。缺点是.parent的所有子元素继承text-align的属性。

3、table + margin 情况下

.child{display:table;margin:0 auto;}

特点:display:table属性最低支持IE8。只需更改.child元素就可以了。

4、absolute + transform 情况下

.parent{position:relative;}
.child{position:absolute;left:50%;transform:translateX(-50%);}

特点:.child是绝对定位,不会对其他元素产生影响。不支持IE6、7、8

5、flex + justify-content 情况下

.parent{display:flex;justify-content:center;}
/*或者等价于
.parent{display:flex;}
.child{margin:0px auto;}
*/

特点:display:flex不支持IE6、7、8 。

2、垂直居中

设置.parent的div元素height:440px;不定宽。

在下面案例中,只设置了高度height:300px;便于观察效果。

1、默认情况下

2 、table-cell + vertical-align 情况下

.parent{display:table-cell;vertical-align:middle;}

特点:兼容性好,不兼容IE6、7

3 、absolute + transform 情况下

.parent{position:relative;}
.child{position:absolute;top:50%;transform:translateY(-50%);}

特点:.child子元素不干扰其他元素。不兼容IE6、7、8

4 、flex + align-items 情况下

.parent{display:flex;align-items:center;}

 

 特点:兼容性差,不支持IE6、7、8

3、居中

父元素宽度和高度不确定

1、inline-block + text-align + table-cell + vertical-align 情况下

.parent{text-align:center;display:table-cell;vertical-align:middle;}
.child{display:inline-block;}

 本案例为了方便查看效果,指定了.parent元素宽度和高度。

特点:兼容性好,不支持IE6、7

2、absolute + transform 情况下

.parent{position:relative;}
.child{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);}

特点:transform的兼容性问题,不支持IE6、7、8

3、flex + justify-content + align-items 情况下

.parent{display:flex;justify-content:center;align-items:center;}

 特点:兼容性问题,不支持IE6、7、8

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值