首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
V2EX  ›  问与答

css 真是搞人啊 请问这里的文本为何能知道那个已经不在正常流里的元素?

  •  
  •   Newyorkcity · 64 天前 · 449 次点击
    这是一个创建于 64 天前的主题,其中的信息可能已经有所发展或是发生改变。
    https://codepen.io/AdmaEmail/pen/XWrXRrx

    我认为 div2 应该直接被 div1 遮住。。
    我认为这样是符合逻辑的:
    div1 因为 float:left 所以从正常流中消失,浮在了原本位置,于是 div2 在正常文本流中放在了原本 div1 的位置
    div1 和 div2 两个文本都很自然得放在块的左上角所以 div2 就被盖住了。。

    然而结果是 div2 不知为何知道了那个地方有 div1 在,纠正了文本的位置。。请问这一机制是怎样的?谢谢
    2 回复  |  直到 2019-08-14 10:54:27 +08:00
        1
    napsterwu   64 天前 via iPhone
    要加一个 position,具体原因可以 stackoverflow
        2
    meepo3927   63 天前   ♥ 1
    float 机制还蛮复杂的,你的这种情况可以简单理解为:文字环绕机制。

    div2 虽然被 div1 挡住了,但是 div1 和 div2 内部内容的排布还是有关联的。

    如果想完全被遮住:给 div1 加 position: absolute,去掉 float:left

    如果想清除浮动:给 div2 加 clear: both
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2528 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 22ms · UTC 15:10 · PVG 23:10 · LAX 08:10 · JFK 11:10
    ♥ Do have faith in what you're doing.