课程讲的是不是有错误的地方?我把span元素写在div标签里面就跟着移动了?如果写在div的外面,样式设置是针对div写的相对定位,理所当然的不能对span元素造成影响。
这个没错啊 他是让你看那字不会动 盒子是浮起来了不占后边的位置
慕课网没错,<div></div><span></span>这种情况下 <span>里的内容时从左自右显示出来的,他的父级 是body,相对于浏览器窗口的,<div><span></span></div>这种情况下 <span>的父级是<div>。他是<div>里的内容,就相当于一个盒子里装了东西,装你的那个载体的位置发生变化了 你会还在原地?
非常感谢大家的热心回答,感觉在慕课学习真的很愉快!
你理解错了,是不能对这个设置了相对定位的元素造成影响,你可以设置两个div并加上背景色,然后把第一个div使用相对定位偏移到和第二个div有重叠,你会发现使用了相对定位的div会覆盖了重叠的div原来的那一部分。
如果span写在里面,那么就与div结合变成了另一个div了,还是div,所以就跟着移动了。span写在外面,只是为了说明“偏移前的位置保留不动”这里span的对齐对象是浏览器。而新红框的对齐对象是原来的图。形成对比吧,不知对不对,我这么理解的
没错,你再改成
position:absolute;
再理解理解
两个独立块状元素的话,div元素的定位就只会对它这个元素本身有影响。而把span元素放入div元素中,自然会跟着一起移动呀~