div布局-与position修改为float的元素相邻的内联元素会如何排版?

问题描述

与position修改为float的元素相邻的内联元素会如何排版?
#box1{
background-color:red;
width:200px;
height:100px;
float:left;
}
#box2{
background-color:blue;
width:200px;
height:100px;
}
#box3{
background-color:yellow;
width:200px;
height:100px;
}
div id=""box1"" /div img src=""test.jpg"" width=""200px"" height=""100px""/
div id=""box2"" /div
div id=""box3"" /div
为了代码的正常显示,所有的尖括号都被我去掉了。我的问题是:
第一个div因为float属性脱离了文档流那么按照文档流的概念,图片应该从第一行第一列开始排版,可是为什么在实际中图片不会被box1挡住呢?

解决方案

box1 虽然脱离了文档流,但并没有释放他所占据的空间
你把 < img src=""test.jpg"" width=""200px"" height=""100px""/> 调到 box1 前面就可看到这一点

你若像我这样处理 html 标记(在 < 后面加个空格)测试代码时就方便了许多了

解决方案二:
要想覆盖,position改为absolute或者fixed定位,不会占用文档位置,float是浮动布局,可以left/right

http://www.divcss5.com/rumen/r93.shtml

解决方案三:
float只是在文档流中左或右浮动,box1还是在文档流中的,只是位置变了。
position:absolute/fixed,才是脱离文档流。

时间: 2024-10-29 20:52:13

div布局-与position修改为float的元素相邻的内联元素会如何排版?的相关文章

详解CSS布局设计块元素和内联元素

css|设计|详解 块元素(block element)一般是其他元素的容器元素,块元素一般都从新行开始,它可以容纳内联元素和其他块元素,常见块元素是段落标签'P."form"这个块元素比较特殊,它只能用来容纳其他块元素. 如果没有css的作用,块元素会顺序以每次另起一行的方式一直往下排.而有了css以后,我们可以改变这种html的默认布局模式,把块元素摆放到你想要的位置上去.而不是每次都愚蠢的另起一行.需要指出的是,table标签也是块元素的一种,table based layout

css position, display, float 内联元素、块级元素

position属性:position属性指出一个元素的定位方法.有4种可能值:static, relative, absolute or fixed: static:默认值,元素按照在文档流中出现的顺序渲染 absolute:绝对定位,元素相对于它的第一个被定位的祖先元素(非static)来进行定位 fixed:元素相对于浏览器window进行定位 relative:元素相对与它的正常位置进行定位,因此"left:20"就表示在元素正常位置的基础上,左移20像素的距离. float属

css div布局中的9个常见问题

一.UL边距的问题 Ul里边margin和padding的默认值不是0,所以在嵌套li的时候如果指定了li的数值,可能把外部的div撑大,所以如果要使用ul的 时候要指定margin和padding为0,如下ul{margin:0px; padding:0px;}     二.图片设置的问题 现在很多网站都尽量把背景图片放置在一张图片上然后利用background-postion来取得背景图片,这样大大的减少了图片的大小也优化了 网站的打开速度,而有的图片在不同的浏览器中的数值也不同,比如在IE

CSS3与页面布局学习总结(二)——Box Model、边距折叠、内联与块标签、CSSReset

一.盒子模型(Box Model) 盒子模型也有人称为框模型,HTML中的多数元素都会在浏览器中生成一个矩形的区域,每个区域包含四个组成部分,从外向内依次是:外边距(Margin).边框(Border).内边距(Padding)和内容(Content),其实盒子模型有两种,分别是 ie 盒子模型和标准 w3c 盒子模型,加上了doctype声明,让所有浏览器都会采用标准 w3c 盒子模型去解释你的盒子.当设置一个元素的样式如下: <!DOCTYPE html> <html> <

div布局-请问怎么让div中的div在垂直方向上居中呢?

问题描述 请问怎么让div中的div在垂直方向上居中呢? 比如:下面这段代码,如何让里面的div在垂直方向上面居中呢(不好意思,实在是没有悬赏币了) .out{ width:500px; height:500px; background:blue;}.inn{ width:200px; height:200px; background:red;} 解决方案 你的inn怎么比out还大..搞反了吧..通过margin来定位.absolute定位最好,不需要考虑父容器,只需要依据自身的宽和高度来调整

div布局-设置有背景图片的&amp;amp;lt;div&amp;amp;gt;块中怎么开发出一个白色的块?

问题描述 设置有背景图片的<div>块中怎么开发出一个白色的块? 我用一个图片添加为一个 的背景,然后想在这个块中再添加一个白的的块,但是这个快没法变为白色. 谢谢回答. 解决方案 贴代码,或者贴效果图. 解决方案二: 不知道你想要什么样的效果,在上面再加一个div就好了啊 解决方案三: 代码贴一下,这样不知道你要干什么 解决方案四: 浮上去一个白色的块就可以了啊 解决方案五: 我也是初学者 看看吧 不一定对 <!doctype html> <div style='backg

提高css+div布局的可读性

提高css+div布局的可读性 一.CSS样式文件分解 对于小项目,在写代码之前,按页面结构或页面内容将代码分为几块并给予注释.例如,可以分别将 全局样式.布局.字体样式.表单.评论和其他分为几个不同的块来继续工作. 而对于较大的工程,这样显然不会有什么效果.此时,就需要将样式分解到几个不同的样式表文件.下面的master stylesheet 就是这一方法的例子,它的工作主要是导入其他样式文件.使用这一方法不仅能优化样式结构,而且有利于减少一些不必要的服务器请求.而分解文件的方法就有许多种,m

html-CSS关于div布局的小问题,请教了,谢谢

问题描述 CSS关于div布局的小问题,请教了,谢谢 <head> <style> .ABC{width:100px; height:100px; background:red; margin:auto; margin-left:20px;} </style> </head> <body> <div class="ABC"></div> </body> </html> 为什么居中

嵌套DIV布局似乎与“布局结构与内容相分离”的原则冲突!

嵌套DIV布局似乎与"布局结构与内容相分离"的原则冲突! 为了合理实现XHTML+CSS格式的布局,似乎免不了在网页内容的HTML文件中写入嵌套的<div>标记,以实现那些常用的布局形式.比如:...<body> <div id="header">this is header</div> <div id="main"> <div id="navigater"&g