我的父级元素div用了相对定位,儿子元素div用了相对定位,为什么孙子元素div用了绝对定位不行了?

孙子元素top失效,margin-top才可以。这是为啥呢... 孙子元素top失效,margin-top才可以。这是为啥呢 展开
 我来答
852774777
2014-11-24 · TA获得超过116个赞
知道小有建树答主
回答量:327
采纳率:0%
帮助的人:204万
展开全部

应该是你代码写错了,试试下面这个。

<div style="width: 300px; height: 300px;border:1px solid #f00;position: relative;">
            <div style="width: 200px; height: 200px; margin:50px;border:1px solid #f00;position: relative;">
                <div style="width: 100px; height: 100px;border:1px solid #f00;position: absolute; top: 10px;">
                    
                </div>
            </div>
        </div>
更多追问追答
追问
我想用百分比来设置。你这个我试过了没有问题。但是换成孙子元素用top:20%就会失效
追答

没有失效啊,你代码是不是有问题呢,父和子都是position:relative;对吗?

蓝框就是20%

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhangqi0192
2014-11-24 · TA获得超过2390个赞
知道大有可为答主
回答量:1417
采纳率:0%
帮助的人:1248万
展开全部
孙子的 top 是根据 父级来说的 如果你要孙子绝对定位 请把 爷爷和父亲的position:都设为 relative 这样才行
希望能帮到你 谢谢
更多追问追答
追问
我就是这样设定的。但是top会失效。不能用百分比,只能用比如top:50px;
追答
为何要用百分比?  你看你的代码  用百分比的情况是 父级的宽度或者高度就是百分比  为了自适应 你的父级 div  高度宽度都是固定的 为何不能写px呢?  不理解 100px的 20% 不是20px么?难道还有变化不成?
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
杂五杂六聊热点
2014-11-24 · TA获得超过211个赞
知道小有建树答主
回答量:257
采纳率:100%
帮助的人:199万
展开全部
孙子元素是相对于儿子元素的定位吧。不然你把链接发出来看看
更多追问追答
追问
孙子元素是相对于儿子元素定的位。可以用top:20px;但是top:20%却会失效。但是我用margin-top:20%却又可以
追答
要不你把代码发出来或者url发出来也好让我们看一下。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式