关于float和position

在CSS样式中,float和position似乎有一定的地位,不说了,看下面(position下次补充,还是会写在这篇文章里)

在div 块级元素中,一般我们的div块都是流式的,如果你设定一个div,接下来的div就会另起行,这就是块级元素

但是一般排版不是这样的,最典型的应该就是这种(略丑,随意看)

这种布局了,那么中间的那三个div块,就是float的效果了

首先看一个简单的例子吧,

这个就是典型的div块分布咯(很容易看出有三个div)

然后如果在float2加上float:left的话,效果就会变成下面这样

float使你设置的元素脱离了父级元素(本来这里float2是最大的div的子级元素)

float的属性有left,right,none;

那么就可以解决上面第一张图中间的布局,但是这里还有一个问题,就是下面的注脚,

如果直接div不设置任何东西的话,而中间的三个div都设置float:left的话,结果就是这样

不知道看不看得清,,那个黄色的注脚隐藏在三个div后面

这就跟前面说的float使得前面三个div脱离父级元素,因此footer成为banner后面的块级元素,

这时,如果想清除float对div的影响,可以用clear:both;

这时就完成了第一张图片的布局

注意,如果只是设置一个div的float的话,接下来的div会环绕着这个设置了float的div

听不懂?哦,我给你图

就是这样,嗯,这个样式还在慢慢写,只有几个纯色很丑也当没看见

最后,贴个第一张图的样式代码

 1 body{
 2     background:#2286c6;
 3     margin:0px;
 4     padding:0px;
 5     font-size:12px;
 6     font-family:Arial;
 7 }
 8 #container{
 9     margin:0px auto;
10     width:780px;
11     height:600px;
12     text-alignment:left;
13     background:#123456;
14
15 }
16 #banner{
17     margin:0px;
18     padding:0px;
19     background:#778899;
20     height:150px;
21     width:100%;
22 }
23 #globlink{
24     margin:0px;
25     padding:0px;
26     background:#567;
27     height:50px;
28     width:100%;
29 }
30 #left{
31     width:200px;
32     height:370px;
33     background:red;
34     margin:0px;
35     padding:0px 0px 5px 0px ;
36     color:#d8ecff;
37     float:left;
38 }
39
40 #middle{
41     width:400px;
42     height:370px;
43     background:blue;
44     margin:0px 2px ;
45     padding:0px 0px 5px 0px ;
46     color:#d8ecff;
47     float:left;
48 }
49 #right{
50     width:176px;
51     height:370px;
52     background:pink;
53     margin:0px ;
54     padding:0px 0px 5px 0px ;
55     color:#d8ecff;
56     float:left;
57 }
58 #footer{
59     width:100%;
60     height:30px;
61     background:yellow;
62     margin:1px 0px 0px 0px ;
63     padding:1px 0px ;
64     color:#d8ecff;
65     clear:both;
66 }

时间: 2024-10-09 08:56:25

关于float和position的相关文章

Day50:CSS属性(float、position)

一.float属性 1.基本属性 先来了解一下block元素和inline元素在文档流中的排列方式. block元素通常被现实为独立的一块,独占一行,多个block元素会各自新起一行,默认block元素宽度自动填满其父元素宽度.block元素可以设置width.height.margin.padding属性: inline元素不会独占一行,多个相邻的行内元素会排列在同一行里,直到一行排列不下,才会新换一行,其宽度随元素的内容而变化.inline元素设置width.height属性无效 常见的块级

float 与 position 剪不断理还乱的关系

float: 1.使当前元素div1脱离文档流: 2.影响紧挨着它的后面的div2,使其钻到div1的下面.但是div2中文字不发生变动.(div2没有浮动): 3.要想2个div并排显示,必须都要设置float: position: 1.相对定位 relative: 2.绝对定位 absolute:使当前元素完全脱离文档流,就像在页面中没有该元素一样,或者说我把它从原来位置拿走了,它后面的元素当它不存在.要想并排显示两个div,

在 CSS 中,用 float 和 position 的区别是什么?

loat和position这两者并没有孰好孰不好的问题,两者按需使用,各得所需的效果.float从字面上的意思就是浮动,这种在印刷排版之类中可能解释的更加贴切.float能让元素从文档流中抽出,它并不占文档流的空间,典型的就是图文混排中文字环绕图片的效果了.并且float这也是目前使用最多的网页布局方式.不过需要注意的是清除浮动是你可能需要注意的地方.并且如果你要考虑到古老的IE6之类的还会有一些bug诸如双边距等等问题.而position顾名思义就是定位.他有以下这几种属性:static(默认

inline元素、inline-block元素在float、position:fixed、position:absolute之后出现的问题

我们知道内联元素是不能设置宽.高的,但是一旦使其脱离了文档流,就可以了,这是因为它已经变成了块级元素. 例1: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>floattest</title> <style> div.wrap { width: 500px; height: 300px; m

CSS 中,用 float 和 position 的区别是什么?

呃,其实这个命题有误,只有position才是定位,float不能说是定位,不过你可以说这两种布局方式有什么不同.float和position这两者并没有孰好孰不好的问题,两者按需使用,各得所需的效果.float从字面上的意思就是浮动,这种在印刷排版之类中可能解释的更加贴切.float能让元素从文档流中抽出,它并不占文档流的空间,典型的就是图文混排中文字环绕图片的效果了.并且float这也是目前使用最多的网页布局方式.不过需要注意的是清除浮动是你可能需要注意的地方.并且如果你要考虑到古老的IE6

【转】float和position

比如,可以使用若干个浮动元素来构建一个整洁简洁的页面排版.或者,如果需要更复杂的排版要求,可以考略使用其他方法,比如使用相对定位和绝对定位. 在这篇文章中,我们首先要讨论元素浮动:然后,我们要讨论如何使用x,y和z轴控制元素的位置. 元素浮动 当构建一个页面的排版时,使用元素浮动是一种直观的方法去控制元素的位置.元素浮动可以让一个元素靠近或者远离另一个元素.它根据一个元素的大小和其父节点容器的大小来构造这个元素在排版中与其他元素之间的关系. 当一个元素被浮动时,这个元素是挨着前一个元素,还是出现

CSS 盒子模型及 float 和 position

## CSS和模型 ##CSS盒模型本质上是一个盒子,封装周围的 HTML 元素,包括 外边距(marign),边框(border),填充(padding),内容物(content) 盒子模型的类型:W3C 标准和模型和 IE 盒模型(怪异盒模型) W3C 标准盒模型:属性 width 和 height 只包含 content,不包括 border 和 padding IE 盒模型:属性 width 和 height 包含 border 和 padding,指的是 content + paddi

float和position:absolute脱离文本流的区别

float和position:absolute脱离文本流的区别原创 paediatrician 最后发布于2016-09-19 10:43:05 阅读数 5375 收藏展开 文档流:将窗体自上而下分成一行行, 并在每行中按从左至右的顺序排放元素,块状元素独占一行,内联元素不独占一行: CSS中脱离文档流,也就是将元素从普通的布局排版中拿走,其他盒子在定位的时候,会当做脱离文档流的元素不存在而进行定位. 需要注意的是,使用float脱离文档流时,其他盒子会无视这个元素,但其他盒子内的文本依然会为这

css基础篇(三)——布局(上)float和position

1.定位(position) position的值有:relative/absolute/fixed/static/inherit; static:为position属性的默认值,static元素会遵循正常的文档流,且会忽略top,bottom,left,right等属性; inherit:如同其他css的inherit值,即继承父元素的position值(ie不支持) 下面重点介绍前三个值: 1.1 相对定位(relative) 场景描述(如上图):第二个div的位置相对自己向下向右移动30p