课程:
- 1、css中元素的定位什么时候需要性对定位,什么时候需要绝对定位?还有浮动
- 2、做网页时,浮动是不是用得最多啊,相对定位和绝对定位用得特别少,有从来不用浮动的布局吗
- 3、为什么要清除浮动
- 4、CSS用浮动好还是绝对定位好(如图)?
- 5、什么时候用浮动什么时候用绝对定位
css中元素的定位什么时候需要性对定位,什么时候需要绝对定位?还有浮动
这个问题太混乱了...
默认定位(即不加任何定位),通过margin,padding就能满足大部分要求
当要使元素进行奇怪的偏移时,就用相对
当要使元素独立于页面进行定位时,就用绝对
当要使块级元素同行显示时,就用浮动
做网页时,浮动是不是用得最多啊,相对定位和绝对定位用得特别少,有从来不用浮动的布局吗
用浮动还是定位都是要看情况的,比如自动居中就不需要用到浮动,而div默认是换行的,不用浮动很难控制小的模块达到自己想要的效果,所以至今还没看到不用浮动布局,也许纯表格可以。定位其实也用的挺多的,比如导航下拉子菜单、弹出框等,都是很常用的。
为什么要清除浮动
1、在网页中,DIV一般都是嵌套的,外面称为窗口,里面的DIV存放内容,如果不浮动的话,如下面这段代码
div style=”background:#ccc;”
div style=”float:left; width:30%; height:40px;background:#333; “ Content here/div
/div
本来我们期望看到的是,外面背景为#ccc的层包含了里面背景为#333的层,但实际上,外面的层在显示的时候高度几乎为0,这就是因为里面的层用了浮动,但如果强制规定外层容器的尺寸,则显得就不那么灵活了,高度就不能自动适应了。这时,如果我们在里面清除浮动
div style=”background:#ccc;”
div style=”float:left; width:30%; height:40px;background:#333; “ Content here/div
div style=”clear:both”/div
/div
那么显示就正常了。
2、如果全部元素都浮动的话,理论上也是可以的,并且有很多网页的排版布局都已经实现了全部DIV化,但这仅限于排版布局,因为这是DIV的强项,但是包含内容这块还是让其他元素去做吧。因为如果功力不到的话,全部浮动的定位和尺寸问题不太好把握,浏览器之间显示的也不尽相同。
CSS用浮动好还是绝对定位好(如图)?
浮动主要适用于未知数量元素的排版,或行级排版(这里指的是同级元素的行,而不是文本的行),如果需要跨行,还是用定位要省事。
什么时候用浮动什么时候用绝对定位
绝对定位使元素脱离文档流,因此不占据空间。普通文档流中元素的布局就当绝对定位的元素不存在时一样。因为绝对定位的框与文档流无关,所以它们可以覆盖页面上的其他元素。
而浮动元素的定位还是基于正常的文档流,然后从文档流中抽出并尽可能远的移动至左侧或者右侧。文字内容会围绕在浮动元素周围。当一个元素从正常文档流中抽出后,仍然在文档流中的其他元素将忽略该元素并填补他原先的空间。它只是改变了文档流的显示,而没有脱离文档流,理解了这一点,就很容易弄明白什么时候用定位,什么时候用浮动了。
一个元素浮动或绝对定位后,它将自动转换为块级元素,而不论该元素本身是什么类型。