css – 为什么大的负边际权利使绝对元素不包裹?

更新:

位置值会改变宽度.

JSfiddlehttp://jsfiddle.net/caicai/mbtb5m7p/2/

为什么div .a2的宽度等于其父的宽度,而div .a1中的文本不会包装?

JSfiddlehttp://jsfiddle.net/caicai/mbtb5m7p/

.r {
    position: relative;
    width: 100px;
    height: 22px;
    background: blue;
}
.a1 {
    position: absolute;
    top: 30px;
    margin-right: -9999px;
    background: green;
}
.a2 {
    position: absolute;
    top: 60px;
    background: orange;
}
<div class="r">
    <div class="a1"> 
        Why does this line no wrap. 
    </div>
    <div class="a2"> 
        Why does this line wrap. 
    </div>
</div>

解决方法

div.r的宽度为100px,相对放置.

孩子们.a1和.a2是绝对的.与他们(相对放置)的父母有关.

没有负边际,孩子的最大宽度等于其父母的大小.

但是,通过增加负边距,您可以让孩子们“浮动”其父母边界.

相关文章

Css3如何实现鼠标移上变长特效?(图文+视频)
css3怎么实现鼠标悬停图片时缓慢变大效果?(图文+视频)
jquery如何实现点击网页回到顶部效果?(图文+视频)
css3边框阴影效果怎么做?(图文+视频)
css怎么实现圆角边框和圆形效果?(图文+视频教程)
Css3如何实现旋转移动动画特效