开发者社区 问答 正文

什么情况下,padding比margin更好啊

我们都知道 padding 和 margin 都可以用来定位,但是有时用 padding 比 margin 更好,比如margin 的上下边距合并。具体在那些情况下,用 padding 比用 margin 更好啊?

展开
收起
杨冬芳 2016-06-02 11:01:23 2520 分享
分享
版权
举报
2 条回答
写回答
取消 提交回答
  • php是世界上最好的语言

    关注一下

    2019-07-17 19:24:19 举报
    赞同 评论

    评论

    全部评论 (0)

    登录后可评论
  • IT从业

    从实用价值考量:
    •背景可以铺到padding区域,而不能铺到margin区域
    控制背景裁剪的background-clip不支持margin-box,换言之,无论如何,背景都无法铺到margin区域中
    •对于块级元素,若其width不为auto/default,可以设置margin: auto,可用于水平或垂直(需额外设置)方向上的自动居中,padding则无此功能
    •margin有折叠行为,padding则无
    在子元素之上写margin表达子元素和父元素之间的留白时,需要在父元素上加入BFC,否则margin会与父元素折叠。padding则无此后顾之忧
    •margin可以设置为负值,padding则无法设置为负值
    margin负值可以让元素交叠,或撑宽元素的内容区域,这在有一定间隙的列表布局中极其有用


    从实用价值考量:
    •背景可以铺到padding区域,而不能铺到margin区域
    控制背景裁剪的background-clip不支持margin-box,换言之,无论如何,背景都无法铺到margin区域中
    •对于块级元素,若其width不为auto/default,可以设置margin: auto,可用于水平或垂直(需额外设置)方向上的自动居中,padding则无此功能
    •margin有折叠行为,padding则无
    在子元素之上写margin表达子元素和父元素之间的留白时,需要在父元素上加入BFC,否则margin会与父元素折叠。padding则无此后顾之忧
    •margin可以设置为负值,padding则无法设置为负值
    margin负值可以让元素交叠,或撑宽元素的内容区域,这在有一定间隙的列表布局中极其有用

    2019-07-17 19:24:19 举报
    赞同 评论

    评论

    全部评论 (0)

    登录后可评论
问答地址:
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等