StayRealDream
2015-04-26 18:20
为什么要先给父元素float:left
首先要知道:设置了position :relative ;的元素,它移动时的参考位置是这个元素自己的初始位置。
而为本章中的父元素设置了
float:left;
之后,可以保证父元素的初始位置在body的最左边,在这一基础上,再应用 left :50% ; 才可以保证父元素向右移动了50%之后,它的左边框刚好在body的正中间。
其实这个方法的思路是这样的:要让元素居中就给他left50%好了。可是元素本身还有宽度,left50%之后元素的左边位于页面的中间而不是元素本身。所以就给元素加一个包裹层,让这个包裹层left50%,然后要居中的元素本身只要相对于他的包裹层再左移50%即left-50%就行了。
因为与元素没有设置 width
position:relative; 这个是相对于自己来设置移动。
left:50%:这个是相对于自己来说,可以因本身没有设置宽度,所以没有参照物
so
float:left :这个属性有自动计算元素的宽度的。配合 left 来使用。
浮动元素是跟据内容的多少来占位置的
使用了float:left才会向左“挤”。否则元素长度占了一行。???
初识HTML(5)+CSS(3)
1230790 学习 · 19084 问题
相似问题