为了账号安全,请及时绑定邮箱和手机立即绑定

当一个元素设置了absolute,那么margin:0 auto;为什么失效了??margin-left却依然生效??

当一个元素设置了absolute,那么margin:0 auto;为什么失效了??margin-left却依然生效??

yangwwei 2016-04-18 11:19:51
<!DOCTYPE html> <html> <head>     <meta charset="UTF-8">     <title>Document</title> <style>     *{margin:0; padding:0;}     div{width:100px;height:100px;background-color:orange;         position:absolute;margin:0 auto;     } </style> </head> <body>     <div></div> </body> </html>
查看完整描述

3 回答

已采纳
?
qq_青枣工作室_0

TA贡献446条经验 获得超754个赞

设置了position:absolute后,要用left和right来定位。

你增加两句就行了:

left:0; right: 0;

查看完整回答
2 反对 回复 2016-04-18
  • yangwwei
    yangwwei
    谢谢解答! 尝试了left:0;right:0;但没有任何改变。。如果设成left:%50-50px为什么也不行呢??
  • qq_青枣工作室_0
    qq_青枣工作室_0
    我的方法可以居中啊。如果你要用CSS计算表达式,可以这样用 left: -webkit-calc(50% - 50px); <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Document</title> <style> *{margin:0; padding:0;} div{width:100px;height:100px;background-color:orange; position:absolute;margin:0 auto; left:0; right: 0; } </style> </head> <body> <div></div> </body> </html>
  • yangwwei
    yangwwei
    要使得居中必须margin:0 auto;也要有。。。这是为什么呢??
?
要成为攻城狮的男人

TA贡献3条经验 获得超2个赞

当设置了absolute之后 ,div不占文本流了  所以margin不好用了

查看完整回答
反对 回复 2016-04-19
  • 3 回答
  • 0 关注
  • 2518 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信