marginauto不就能设置居中了吗,为什么还要设置左右距离为0?

marginauto不就能设置居中了吗,为什么还要设置左右距离为0?

 canvas {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        display: block;
        margin: auto;
        background-color: #abcdef;
    }

我试了一下,把左右为0删了后画布就跑到左边了,为什么啊?

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

绝对定位,margin:auto,让元素竖直居中


  • 银白色暴风雪 提问者 #1
    我设了left和right都是0后,它就已经居中了,这时候margin auto不就多余了吗?
    2017-01-15 11:12:22
  • 卡布琦诺 回复 提问者 银白色暴风雪 #2
    绝对定位的布局取决于三个因素,一个是元素的位置,一个是元素的尺寸,一个是元素的margin值。 没有设置尺寸和 margin 的元素会自适应剩余空间,位置固定则分配尺寸,尺寸固定边会分配 margin,都是自适应的。使用绝对定位,margin:auto,让元素竖直居中!
    2017-01-15 11:32:23
  • 银白色暴风雪 提问者 #3
    非常感谢!
    2017-01-15 22:10:21
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
HTML5与CSS3实现动态网页 2018
  • 参与学习       1887    人
  • 提交作业       4643    份
  • 解答问题       5760    个

有HTML和CSS基础,却不知道如何进阶?本路径带你通过系统学习,完成从“会做网页”到“做出好的动态网页”的蜕变,迈出成为前端工程师的第一步。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师