解决方案
- 代码及效果
原理
浏览器渲染 html,是有文档流的说法的,块级元素换行渲染,行内(内联)元素行内渲染,在这里,两个 div 都是块级元素,一个父,一个子,正常来说的渲染结果是父元素在浏览器左上角,子元素在父元素的左上角。如果我们要对子元素相对父元素进行定位,就要用到 position 属性。
属性值 描述 absolute 生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位。 relative 生成相对定位的元素,相对于其正常位置进行定位。 - 我们知道,要使用相对于父元素的定位,肯定要使用 absolute,为什么直接使用 absolute 不起作用?因为使用 absolute 相对于父元素定位,对父元素有一个要求,就是父元素的 position 不能是 static,如果父元素的 position 是 static 那么就继续向上查找元素,直到找不 position 不为 static 的元素,对这个元素进行相对定位,所以,需要将父元素的 position 设置为 relative,这样做是没有影响的,因为,relative 只是相对于正常位置进行定位,正常位置就是所谓的文档流默认的输出位置,如果我们设置了 position 为 relative 而不设置偏移量 x,y,那就相当于父元素的位置是没有变动的。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。