- 本文要点
- 1. 绝对定位元素文档流;
- 2. 绝对定位元素定位参照对象;
- 3. 绝对定位元素的自动伸缩;
- 4. 绝对定位元素实现垂直居中;
绝对定位基本特征
绝对定位的第一个特征在于会从文档流中脱离,不受其他元素影响,定位是“绝对”的,所以称之为绝对定位,如果是相对定位,会受其他元素影响,则定位是“相对”的;
未使用定位:即元素在正常文档流当中

.frame { margin: 0 auto; margin-top: 50px; width: 400px; height: 300px; background-color: yellow; } #div1 { width: 100px; height: 50px; background-color: blue; } #div2 { width: 200px; height: 100px; background-color: green; }
当我们给元素加上绝对定位的时候,元素会脱离当前文档流;
#div1 { position: absolute; }
#div1 { top: 30px; }
.frame { position: relative; /* 或者 position: absolute; */ }
注意:请牢记绝对定位元素的定位值是相对于第一个具有定位属性的祖先元素);
#div1 { width: auto; left: 100; right: 50px; }
这个标准适用于从左向右读的文档流中,而在少数从右往左读的文档流中,则优先取 right)。如果这时我们将 margin 设置为 auto ,则绝对定位元素会呈现居中状态;
#div1 { margin: auto; width: 100px; left: 0; right: 0; }
其实并不一定非要设置成0,在 margin: auto 下,只要 left 和 right 的值相等,且不超过其 相对元素减去该绝对定位元素 width 的一半,就可以实现居中;如果其 left 超出了范围,那么会取 left 的值作为定位( 从左向右的文档流); /* 至于在范围能的值不等情况,大家可以自行测试一下 */
#div1 { top: 0; bottom: 0; }
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/225849.html原文链接:https://javaforall.net
