`

认识html文档流

 
阅读更多

写html,css的同学应该需要清楚什么是文档流。文档流:将窗体自上而下分成一行一行,

并在每行中按从左至右的挨次排放元素,即为文档流。

    每个非浮动块级元素都独有一行, 浮动元素则按规则浮在行的一端. 若当时行容不下, 则另起新行再浮动。内联元素也不会独有一行. 一切元素(包括块级,内联和列表元素)均可生成子行, 用于摆放子元素。有三种状况将使得元素离开文档流而存在,分别是浮动、绝对定位、固定定位.
然则在IE中浮动元素也存在于文档流中。

  浮动元素不占任何正常文档流空间,而浮动元素的定位照样基于正常的文档流,然后从文档流中抽出并尽能够远的挪动至左侧或许右侧。当一个元素脱离正常文档流后,依然在文档流中的其他元素将忽略该元素并填补其原先的空间。 

  基于文档流,理解以下的定位形式:

  相对定位:元素框偏移某个距离。元素仍保持其未定位前的形状,它原本所占的空间仍保留。

  绝对定位:即完全离开文档流, 相关于position属性非static值的比来父级元素进行偏移。

    固定定位:即完全离开文档流,相关于视区进行偏移。

 

    文档流是文档中可显示对象在排列时所占用的位置。比如网页的div标签它默认占用的宽度位置是一整行,p标签默认占用宽度也是一整行,因为div标签和p标签是块状对象。
网页中大部分对象默认是占用文档流,也有一些对象是不占文档流的,比如表单中隐藏域。当然我们也可以让占用文档流的元素转换成不占文档流,这就要用到CSS中属性position来控制。

看看CSS 2.0对position的定义:检索对象的定位方式。共有4种取值。

absolute:绝对定位。将对象从文档流中拖出,使用left,right,top,bottom等属性相对于其最接近的一个最有定位设置的父对象进行绝对定位。如果不存在这样的父对象,则依据body对象。而其层叠通过z-index属性定义
。当对象定位在浏览器窗口以外,浏览器因此显示滚动条。

fixed:固定定位。对象定位遵从绝对(absolute)方式。但是要遵守一些规范。当对象定位在浏览器窗口以外,浏览器不会因此显示滚动条,而当滚动条滚动时,对象始终固定在原来位置。
relative:相对定位。对象不可层叠,但将依据left,right,top,bottom等属性在正常文档流中偏移位置。当对象定位在浏览器窗口以外,浏览器因此显示滚动条。 

static:元素框正常生成。块级元素生成一个矩形框,作为文档流的一部分,行内元素则会创建一个或多个行框,置于其父元素中。

inherit:继承值,对象将继承其父对象相应的值。

分享到:
评论

相关推荐

    拼团商城原型—适合学习_HTML文件.rar

    《拼团商城原型—适合学习_HTML文件》是一个针对前端开发者和学习者的资源包,主要包含HTML文件,旨在帮助用户理解并掌握拼团商城的前端构建技术。在这个压缩包中,你可以找到一系列与拼团功能相关的HTML页面,这些...

    Activty工作流_Demo

    2. **创建流程定义**:在项目中,会有一个或多个 BPMN 2.0 格式的XML文件,这些文件定义了工作流的各个阶段、任务和流转规则。例如,一个请假流程可能包含申请、审批、驳回等节点。 3. **启动流程实例**:在业务逻辑...

    1.【尚学堂】全新2022版WEB前端HTML5.zip

    CSS用于美化网页,通过选择器和规则定义元素的样式,而JavaScript则是实现网页动态功能的关键,它可以操作DOM(文档对象模型),与用户交互,以及调用HTML5的新API。 此外,课程中提到的Vue.js是一个流行的...

    Lotus-Notes文档数据库.pdf

    Lotus Notes 文档数据库提供了功能强大的多媒体共享文档数据库和电子邮件系统,广泛应用于办公自动化、工作流控制、协同工作环境等方面。目前,在 SQL Server、DB2、Sybase、Oracle 等大型关系数据库得到普遍应用的...

    网络html简介-ppt

    HTML是一种标记语言,它通过使用一系列预定义的标签来表示文档的结构和内容,比如段落(`<p>`)、标题(`<h1>`至`<h6>`)、图像(`<img>`)等。这些标签告诉浏览器如何显示文本、图片和其他元素。HTML文件通常以`....

    html5游戏开发

    压缩包文件"HTML5_Game_3_0"可能包含了游戏的源代码、资源文件(如图片、音频、JSON数据)以及相关的文档。通过分析这些文件,我们可以学习到如何组织项目结构、如何利用HTML5特性构建游戏逻辑、以及如何优化游戏...

    c++帮助文档chm格式

    7. **输入/输出流(I/O Streams)**:C++的I/O库提供了一种基于流的模型进行输入和输出操作,如cin和cout用于标准输入输出,fstream类用于文件操作。 8. **C++11及后续版本的新特性**:自C++11起,C++引入了许多新...

    html vb应用教程

    1. HTML基本结构:包括HTML文档的头部(`<head>`)、主体(`<body>`)以及基本标签如标题(`<h1>`至`<h6>`)、段落(`<p>`)、超链接(`<a>`)等。 2. HTML元素和属性:讲解了如何使用元素来组织内容,以及通过属性...

    ASP 风铃网站文件共享系统 V.15

    在了解这个系统之前,我们需要先对ASP有一定的认识。 ASP是微软开发的一种服务器端脚本环境,它允许开发者使用VBScript或JScript等语言编写动态网页。在ASP中,服务器负责处理脚本,并将结果返回给客户端的浏览器。...

    iText7jar和英文文档,以及itext5的一些文档。建议大家去官网看itext7

    这个压缩包包含了iText7的jar文件和相关的英文文档,同时也包含了一些关于iText5的资料。iText7是iText系列的一个重大升级版本,因此在功能和API设计上与iText5有着显著的差异。 iText7的主要变化: 1. **API重写*...

    使用HTML CSS制作静态网站【中秋节】

    ### 使用HTML CSS制作静态网站【中秋节】 #### 一、网站题目 本项目主要涉及的是中国传统节日之一——...通过对中秋节这个主题的研究和创作,学生不仅能提高自己的网页设计技能,还能增进对中国传统文化的认识和理解。

    nginx扩展nginx-rtmp-module实现流媒体直播服务器

    通过将视频流分割成一系列小的TS文件,HLS可以实现自适应比特率流,确保用户在不同网络环境下获得流畅的观看体验。nginx-rtmp-module支持将RTMP流转化为HLS流,便于通过Web进行测试和播放。 5. **基于HLS的Web测试...

    不错的OA系统静态demo(html)

    "OA系统"和"OAϵͳ"可能是这个静态Demo的主目录,里面可能包含了HTML文件(如index.html)、CSS样式文件(如style.css)、JavaScript脚本文件(如script.js),以及可能的图片和其他资源文件。通过分析这些文件,...

    html转jsp工具

    "html转jsp工具"就是帮助开发者自动完成这一过程的软件,它能够批量地将HTML文件转换为包含JSP语法的文件,节省手动操作的时间和精力。 转换过程中,工具可能会把HTML中的数据绑定语句替换为JSP的EL(Expression ...

    (完整word版)七天html实训总结.doc

    第五天,实训进入CSS外联样式的学习,这是将样式代码分离出来,放在单独的.css文件中,便于管理和维护。复习之前所学,巩固了HTML和CSS的基础知识。 第六天和第七天,实训进入了高潮,通过对小米网站的实例分析,...

    pyqt5-opencv-video:pyqt5 + opencv 实现视频播放,支持实时流,支持远程文件

    本项目“pyqt5-opencv-video”结合了这两个库的功能,实现了视频播放器,不仅能播放本地视频文件,还支持实时流和远程文件。下面将详细阐述相关的知识点。 1. PyQt5: PyQt5是Python的一个库,它是Qt库的Python...

Global site tag (gtag.js) - Google Analytics