重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
如果不定义浮动的话,各个div的内容在页面上是由上向下排列的。
我们提供的服务有:成都做网站、网站制作、微信公众号开发、网站优化、网站认证、桑日ssl等。为1000+企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的桑日网站制作公司
而如果某个div定义了float: left,那么这个div就会出现在上层div下最靠左的位置,而与它同一等级,但列在它后面的div就会显示在他的右侧了。
同样,如果定义了float:right,那么这个div就会出现在上层div下最靠右的位置,而与它同等级,但列在它前面的div就会显示在他的左侧。
两栏或多栏式页面布局就会用到它。
这个东西叫浮动。
顾名思义,就是让设置的标签产生浮动效果,就是脱离原来页面的标准输出流。
正常情况下,HTML页面中块元素都是从上倒下排列的。如果想实现左右结构。
float的一种选择(当然还有其他方法)。
比如
div style="widht:500px"
div style="float:left;width:200px"左/div
div style="float:left;width:200px"右/div
/div
这样,这个两个DIV标签就在同一行上了(同时靠左),当然有个前提,就是他们俩的父元素的宽度要至少大于400px,这样才能在同一行上。这个结果是两个DIV的右侧会空出100PX的空白
div style="widht:500px"
div style="float:left;width:200px"左/div
div style="float:right;width:200px"右/div
/div
以上写法,也是在同一行。不同的是,一个靠左,一个靠右。
这里边的两个DIV的中间有100PX的空白。
需要注意的是,当标签使用了float属性后,就脱离了标准输出流,就不受页面约束了。这样不方便,也不利于页面布局。
所以,一般浮动之后要清除浮动。
div style="widht:500px"
div style="float:left;width:200px"左/div
div style="float:right;width:200px"右/div
span style="clear:both"/span
/div
这样,页面整体的布局结构就基本上没有被破坏了。
css中float,就是浮动的意思。
浮动什么意思呢?比如,div是占满一行的,现在想把两个div显示在一行上,代码如下:
div style="width:100px;"11111/divdiv style="width:150px"2222/div
这样就设置了两个div,一个宽度100px,一个宽150px。
可预览一下,div仍在两行上,那么怎么把它改到一行上呢?
这儿就需要float,设置第一个div的float为left
div style="width:100px;float:left;"11111/divdiv style="width:150px"2222/div
再预览,就可以看到,它们到一行上了。
float 属性定义元素在哪个方向浮动。以往这个属性总应用于图像,使文本围绕在图像周围,不过在 CSS 中,任何元素都可以浮动。浮动元素会生成一个块级框,而不论它本身是何种元素。
如果浮动非替换元素,则要指定一个明确的宽度;否则,它们会尽可能地窄。
注释:假如在一行之上只有极少的空间可供浮动元素,那么这个元素会跳至下一行,这个过程会持续到某一行拥有足够的空间为止。
float的值:
left 元素向左浮动。
right 元素向右浮动。
none 默认值。元素不浮动,并会显示在其在文本中出现的位置。
inherit 规定应该从父元素继承 float 属性的值。
css中的FLOAT是对齐方式。
1、LEFT是左对齐;
2、RIGHT是右对齐;
3、CENTER是居中;
4、NONE就是取消对齐方式;
定义和用法如下:
float 属性定义元素在哪个方向浮动。以往这个属性总应用于图像,使文本围绕在图像周围,不过在 CSS 中,任何元素都可以浮动。浮动元素会生成一个块级框,而不论它本身是何种元素。
如果浮动非替换元素,则要指定一个明确的宽度;否则,它们会尽可能地窄。
实例如下:
把图像向右浮动:
img
{
float:right;
}
浮动什么意思呢,比如,默认的,我们知道,div是占满一行的,现在我们想把两个div显示在一行上,那怎么办呢
div style="width:100px;"11111/divdiv style="width:150px"2222/div
这样我们就设置了两个div,一个宽度100px,一个宽150px,可预览一下,我们的div仍在两行上,那么怎么把它改到一行上呢,这儿就需要float,设置第一个div的float为left
div style="width:100px;float:left;"11111/divdiv style="width:150px"2222/div
再预览,就可以看到,它们到一行上了。
clear是什么意思呢,clear是清除的意思,它有三个值,left,right,both
很好理解,如果设置了clear:left,它就不怕它的左边有float,同理clear:right,clear:both,是左右都不让有float
举个例子,还是上面的
我们设置第二个div的clear:left,也就是不让它左边有float
div style="width:100px;float:left;"11111/divdiv style="width:150px;clear:left;"2222/div
我们预览一下,就可以看到,尽管第一个div已经float:left了,这两个div仍然在两行上,就是由于第二个div不让它左边有float
因为css的定义是后面的可以覆盖前面的,明白了吧