图文详解CSS浮动float与文档流的关系

在页面布局时,经常会用到浮动float,但是浮动会脱离标准流,会出现一些意想不到的结果,这篇文章就和大家讲讲,css浮动与文档流的关系,有需要的朋友可以参考一下,希望对你有用。

所谓文档流,指元素在排版布局的过程中,元素会自动从左到右,从上到下的流式排列。脱离文档流呢,就是元素打乱了这个排列,或是从排版中拿走。

说到文档流呢,我们先来说一下元素,每个元素呢,都有display属性。

行内元素本身是display:inline属性例如:a b span img input select strong 。不会自动换行,例如我们插入几个图片标签,它们就会紧密相连,图片因为大小会高矮不切,一行排不下会自动换行。

块级元素本身是display:block属性例如:div ol li dl dt dd h1-h6 p。块级元素会独占一行,在不做操作的时候,不管大小,在它后面不会相连,就是霸气。(块级元素和行级元素可以设置相应的display属性来转换)如下图。

立即学习“前端免费学习笔记(深入)”;

浮动1.png

还有个特殊的就是display:inline-block。这样元素就具有行内元素和块级元素的共同特征。

当前所知,脱离文档流的方式有两种:浮动和定位。

浮动(float),在css中任何的元素都可以浮动,Float常跟属性值left、right、none,Float:none 不使用浮动,Float:left 靠左浮动,Float:right 靠右浮动,当左右浮动时,这个元素就会脱离文档流。

例如这样我让第二个第四个左浮动,2脱离了原来的位置跑到了1的下面,4跑到了5的上面,说明他们脱离了文档流,不过他们还是需要显示出来,1,3,5按正常文档流排列,不过2占了3紧挨着1的地方,3被迫挤了下来。

浮动2.png

如果我们把他们都浮动在一边,他们就会并排显示出来,但是有一点就是,你需要给他留有浮动的空间,这个在平常布局的时候很容易出现,如果某一行的空间不够,那么这块就会往在滑,直至找到空间。如图说明

浮动11.png

浮动22.png

浮动33.png

浮动44.png

            #big-box{ width: 500px; height: 800px; border:1px solid #8a2be2; }            #a1 { width: 100px;  height: 100px; background: aqua; }            #a2 {width: 200px; height: 200px; background:yellow; }            #a3 {width: 100px; height: 100px; background:red; }            #a4 {width:50px; height: 50px; background:pink;}            #a5 {width: 300px; height: 300px; background:peru; }            #big-box > * {float: left;}                         
1
2
3
4
5

这是最后一个代码,在5不div不断变大,他浮动的位置也不断的改变,这就是因为5的空间不够,他会不断的找到他位置。可以看到相互元素之间没有空隙,这个特征很好用来排列。

以上就是图文详解CSS浮动float与文档流的关系的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1612122.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月24日 02:46:34
下一篇 2025年12月24日 02:46:43

相关推荐

  • 分享CSS中设置文字颜色的五种方法

    在页面布局时,为了使页面颜色不太单一,需要给文字设置不同的颜色,这篇文章就和大家讲讲怎么给文字设置不同的颜色,都有哪些方法可以设置文字的颜色,有需要的朋友可以参考一下。 CSS中文字的颜色,是通过color属性设置的。 下面是几种方法,都是将文字设置为蓝色。 h3{color:blue;} h3{c…

    好文分享 2025年12月24日
    000
  • 深入理解CSS中display:none和visibility:hidden的区别

    在项目中有时需要隐藏一些元素,会用到display:none或者 visibility:hidden,两种方法都可以实现隐藏的效果,那他们有什么区别呢?这篇文章就和大家讲讲css中display:none和visibility:hidden的区别。有需要的朋友可以参考一下。 Index4 小苹果 A…

    2025年12月24日
    000
  • 怎么用CSS设置动态超链接(附代码)

    这篇文章主要给大家介绍css设置动态超链接的方法,有代码有文字说明,比较容易理解,感兴趣的朋友可以参考一下,希望对你有所帮助。 HTML中,超链接是通过标记实现的,具体的地址使用标记的href属性。 ali的博客 默认的情况下,浏览中的超链接统一为蓝色并且有下划线,点击过后的超链接则为紫色,而且也有…

    好文分享 2025年12月24日
    000
  • 如何用CSS设置段落的垂直对齐(附代码)

    在浏览网页时,经常看到一些段落他是垂直对齐的,今天这篇文章就和大家讲讲如何用css设置段落的垂直对齐,有需要的朋友可以参考一下,希望对你有所帮助。 CSS中通过属性vertical-align来设置段落的垂直对齐方式。 注意,对于文字本身而言,该属性对于块级元素并不起作用,例如 和 等标记,但是,对…

    好文分享 2025年12月24日
    000
  • 图文详解如何让ul中的li元素横向排列(附代码)

    在页面布局时,我们经常会用到li标签,因为li标签用途很广泛,它可以用来制作列表,选项卡,导航等等。但是 标签里的li默认情况下是纵向排列的,那我们可不可以让li横向排列呢?这篇文章就给大家介绍两种方法,来实现html中ul列表横向排列。有需要的朋友可以参考一下,希望对你有用。 ul列表的横向排列在…

    2025年12月24日
    000
  • 图文详解如何让ul中的li水平垂直居中

    ul li标签在页面中用得很多,今天这篇文章就和大家分享一个li标签中的小技巧,如何让ul中li水平垂直居中,感兴趣的朋友可以参考一下,希望对你有用。 我们在写轮播图时,底部的小圆点或数字会放在一个ul下li里,这时候一般都要求小圆点或数字垂直居中,今天就写一个简单的li在ul中水平垂直居中。  轮…

    2025年12月24日
    000
  • 实现元素水平排列的六种方法

    众所周知,块级元素默认是垂直排列的,行内元素是水平排列的,而在布局时基本上都是用块级元素,如div等常用块级标签,那么如何让块级元素也进行水平排列呢?这篇文章给大家介绍六中方式,实现块级元素的水平排列。 第一种:display:inline-block 首先得先了解块级元素(block elemen…

    好文分享 2025年12月24日
    000
  • css如何利用transparent属性设置透明度?transparent属性绘制各种三角形(代码实例)

    想到用css设置元素透明度,大家的第一反应会是:用opacity属性来设置透明度,其实在css中还有其他设置透明度的方法。本章给大家介绍用transparent属性设置透明度,以及用transparent属性绘制各种三角形。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。 那么,大家…

    2025年12月24日
    000
  • 图文详解图片水平垂直居中的五种方法(附代码)

    在页面布局时经常需要对图片的位置进行处理,这篇文章围绕图片居中展开,主要讲了如何用css实现图片的水平居中,图片垂直居中,还有图片的水平垂直居中,课程比较实用,感兴趣的小伙伴,可以参考一下,希望对你有所帮助。 1、text-align: center实现图片水平居中 text-align一般用于文本…

    2025年12月24日
    000
  • 如何使用CSS的Grid布局实现小狗邮票(附源码)

    本篇文章给大家带来的内容是关于如何使用css的grid布局实现小狗邮票(附源码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 效果预览 源代码下载 https://github.com/comehope/front-end-daily-challenges 代码解读 定义 dom…

    2025年12月24日
    000
  • 如何使用CSS的Grid布局实现小鸡邮票(附代码)

    本篇文章给大家带来的内容是关于如何使用css的grid布局实现小鸡邮票(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 效果预览 源代码下载 https://github.com/comehope/front-end-daily-challenges 代码解读 定义 dom…

    2025年12月24日
    000
  • 如何使用CSS的Grid布局实现小松鼠邮票的效果(附源码)

    本篇文章给大家带来的内容是关于如何使用css的grid布局实现小松鼠邮票的效果(附源码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 效果预览 源代码下载 每日前端实战系列的全部源代码请从 github 下载: https://github.com/comehope/front-…

    2025年12月24日
    000
  • 如何让伪进度条在页面上显示成gif图像

    在工作中为了方便,我们需要加上一些效果,这篇文章就和大家讲讲伪进度条如何在页面上显示gif图像,感兴趣的朋友可以参考一下,希望可以帮助到你。 最近做的一个项目中,点击某个操作后,由于后台做的事情比较多,花的时间比较久一点。而这个过程中前台又看不出一点变化,为了防止客户点击后再次点击该按钮,就在第一次…

    2025年12月24日
    000
  • 图文详解CSS3中filter滤镜属性的使用(实例代码)

    最近在网上偶然发现了一个特别牛逼的属性,就是css3中的filter滤镜属性,这个属性可以改变图片的颜色,一张图片可以呈现多种效果,接下来就给大家介绍css3中的filter过滤器的使用方法,以及实例示范filter滤镜的效果,感兴趣的朋友继续往下看吧。 很多人不知道CSS filter是什么意思。…

    2025年12月24日
    000
  • 深入理解CSS中的filter属性的使用方法

    这篇文章只要讲了css滤镜的使用方法,非常详细,有需要的小伙伴可以参考一下,希望对你有用。 CSS滤镜的使用方法:filter:filtername(parameters) 即 filter:滤镜名称(参数) alpha:设置透明层次blur:创建高速度移动效果,即模糊效果chroma:制作专用颜色…

    好文分享 2025年12月24日
    000
  • 分享九种纯CSS实现垂直居中的方法

    这篇文章围绕垂直居中展开,主要介绍了垂直居中的多种方法,相信总有一款是你需要的,感兴趣的朋友可以参考一下,希望对你有帮助。 垂直居中是布局中十分常见的效果之一,为实现良好的兼容性,PC端实现垂直居中的方法一般是通过绝对定位,table-cell,负边距等方法。有了css3,针对移动端的垂直居中就更加…

    好文分享 2025年12月24日
    000
  • 你知道怎么让一个float:left的元素居中吗?

    在页面布局中,经常用到浮动,那浮动以后的元素还可以居中吗?这篇文章主要讲了如何让一个float:left的元素居中,不知道的小伙伴继续往下看吧。听起来很高端大气上档次的样子 但是其实试了一下还是很简单 第一种方法 .box { float: left; width: 100px; height: 1…

    2025年12月24日
    000
  • 当float属性导致换行后,应该怎么处理?

    页面布局离不开float浮动的使用,当float属性导致换行后,应该怎么处理?想知道的小伙伴继续往下看吧,希望可以帮助到你。 在h5开发中,经常会使用float属性来解决一些布局问题。但在某些复杂的布局中也会遇到使用float属性是导致一行中的元素无法对齐或者float元素换行等现象。在遇到这种问题…

    好文分享 2025年12月24日
    000
  • 如何让ul实现横向排列不换行的效果

    大家在页面布局时有没有遇到这种情况,让ul横向排列时,它会换行,但是这不是我们希望看到的效果,你知道怎么处理这种情况吗?这篇文章就和大家聊聊如何让ul实现横向排列不换行,感兴趣的欢迎阅读评论。 刚学前端不久,尝试着写各种布局。今天想实现一个横向排列的照片列表,于是最先想到的就是利用ul将list-s…

    好文分享 2025年12月24日
    000
  • css中如何设置hr的样式?css 标签多种样式(图文)

    在对html网页进行美化的时候,肯定少不了要用的hr标签进行修饰页面,但默认的hr标签样式对页面的修饰起不到什么好的作用,有经验的前端工作者就会通过使用css样式来对hr标签进行一些美化的操作。那么如何在css中给hr标签设置样式呢?本章就给大家介绍css设置hr标签的几种样式。有一定的参考价值,有…

    2025年12月24日 好文分享
    000

发表回复

登录后才能评论
关注微信