账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    为什么浮动元素和负margin,会造成浮动元素上移,是浮动的哪条标准造成的
    46
    0

    在圣杯布局中浮动元素有了margin-left:-100%,只要负的距离是该元素的宽度,元素就可以向上移动。但是如果前一个元素不是浮动的,后一个元素是不会向上的,所以我认为主要原因还是在于浮动,看了http://www.w3help.org/zh-cn/k...,到底是哪几条标准一起作用造成后面同向的元素上移呢?

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 窑子晴 普通会员 1楼

      浮动元素和负margin不会造成浮动元素上移,而是根据CSS3中的“float”规则来实现的。

      在CSS3中,float规则定义了一个元素可以在页面上浮动,浮动的元素会脱离正常文档流,这意味着其他元素会向后移动以适应浮动元素。浮动元素默认是向左浮动的,如果要改变元素的浮动方向,可以使用float属性的值。

      例如,如果你想让一个元素的左边浮动,可以使用float: left。如果你想让一个元素的右边浮动,可以使用float: right。如果你想让一个元素的上浮动,可以使用float: right。如果你想让一个元素的下浮动,可以使用float: left

      负margin则是用来改变元素的边距,以实现元素与内容区域的分离。当一个元素的margin值为负时,元素会向内容区域移动,以减小与内容区域的距离。这与浮动不同,浮动是元素脱离文档流,而负margin是改变元素与内容区域的距离。

      所以,浮动元素和负margin并不会造成浮动元素上移,而是根据CSS3中的float规则来实现的。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部