文档流的解析

<!-- 文档流
1,跨级元素独占一行,几个块级元素就独占几行。
2,行内元素会从左向右排满,折行继续排版。
3,绝对定位(absolute) 固定定位(fixed) 会脱离文档流,不占位,前后元素会忽略它们。
根据指定位置进行排版,且任何元素进行以上两种定位都会变成块级元素,可以设置宽高。
4,浮动元素,会脱离文档流,且一定会占位,后面如果是块级元素则会忽略它的存在,
围绕着它进行排版,另外浮动后的元素就变成块级元素,可以设置宽高,
包括行内元素,如行内元素没有设置,则按照原来宽高进行占位。 -->

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4     <meta charset="UTF-8">
 5     <title>Document</title>
 6     <style>
 7         .two,p{
 8             border: 1px solid red;
 9             margin-top: 10px;
10         }
11         /* .p1{//注释比较好分析,可以拿掉注释进行分析
12             float: left;
13             border: 1px solid #f0f;
14             width: 100px;
15             height: 60px;
16         } */
17         .sp1{
18             float: left;
19             border: 1px solid #f0f;
20             width: 100px;
21             height: 60px;
22         }
23     </style>
24 </head>
25 <body>
26     <div class="one">
27         <p class="p1">的熟练度福建省打飞了</p>
28         <div class="two">上路的分开就速度飞</div>
29         <span class="sp1">sdfljsdf</span>
30         <span class="sp">索拉卡电风扇大理石开发动机阿斯顿发</span>
31         <span class="sp">索拉卡电风扇大理石开发动机阿斯顿发</span>
32         <p class="p2">slfdksdjflkdsj</p>
33     </div>
34 </body>
35 </html>
36
37 <!-- 默认情况下所有元素的层级如下排列:
38 1,最下面一层是标准文档流,后出现元素会覆盖先出现元素。
39 2,浮动元素在第二层。
40 3,绝对定位的元素是最后渲染的,所以在最上面。
41 4,z-index的前提是:必须进行定位才可以设置。
42     position:relative/absolute/fixed,只有进行定位才可以设置z-index的值,
43     否则设置是无效的。
44 5,设置z-index时,可以使用范围设置,如:导航层,内容层,蒙版层
45     内容层:100~200
46     导航层:200~300
47     蒙版层:300~400
48
49 外边距折叠:如有两个块级元素,上A下B,
50     上A   设置 margin-bottom:10px;
51     下B   设置 margin-top:20px;
52     那么A,B之间的边距为20,以边距大的为准,正所谓所谓边距折叠。
53 -->

原文地址:https://www.cnblogs.com/Knowledge-is-infinite/p/11148330.html

时间: 2024-11-06 21:09:46

文档流的解析的相关文章

笔记:XML-解析文档-流机制解析器(SAX、StAX)

DOM 解析器完整的读入XML文档,然后将其转换成一个树型的数据结构,对于大多数应用,DOM 都运行很好,但是,如果文档很大,并且处理算法又非常简单,可以在运行时解析节点,而不必看到完整的树形结构,那么我们应该使用流机制解析器(streaming parser),Java 类库提供的流解析机制有 SAX 解析器和 StAX 解析器,SAX 解析器是基于事件回调机制,而 StAX解析器提供了解析事件的迭代器. 使用SAX解析器 SAX 解析器在解析XML 输入的组成部分时会报告事件,在使用 SAX

从文档流角度理解浏览器页面渲染引擎对元素定位的解析

文档流:将窗体自上而下分成一行一行,并在每行中按从左至右的挨次排放元素,即为文档流. 我们在排列元素时,遵循"流式结构",即元素遵循从上向下,从左向右堆叠的规则,所以我们在排列元素时如果每行从左往右的元素的总宽度大于窗口的宽度时,就会默认换行. 有三种状况将使得元素离开文档流而存在,分别是浮动.绝对定位.固定定位. 浮动时,离开文档流后的元素,不占用文档流的空间,不会被文档流中的元素发现,离开文档流元素后面的还在文档流上元素会自动上来填补位置接上文档流.此时,离开文档流的元素如同浮在文

CSS中脱离文档流是什么意思?

如果一个元素脱离文档流了,是不是只是显示上脱离而已?在html中是否也会脱离?我用js取这个元素的父节点的childNodes还能否取到这个元素:同时,这个元素的parentNode还是不是html中的父节点? 脱离文档流只是对html文档的一种解析方案的说法而已.脱离文档流是相对正常文档流而言的.正常文档流就是我们没有用css样式去控制的html文档结构,你写的界面的顺序就是网页展示的顺序.比如写了5个div块.正常文档流就是依次显示这5个div块.从左往右,自上而下的顺序.脱离文档流就是指它

理解文档流

这个暑假里的实习是真正让我体会到了做前端一定要理解文档流.之前一直处于必须给元素加边框才能看到我讲元素放置在了文档中的什么位置.理解了文档流,脑海中就会定位到相应的元素. 文档流,其实本没有这样的定义,有的是普通流的概念.简单说就是元素按照其在HTML中的位置顺序决定排布的过程.并且这种过程遵循标准的描述. 即将窗体自上而下的分成一行一行,并在每行中按照从左至右的顺序排放,即为文档流.所有的HTML都在块框或者行内框中. 当浏览器开始渲染HTML文档,它从窗口的顶端开始,经过整个文档内容的过程中

position脱离文档流与浮动脱离文档流的区别

以前我觉得position:absolute;是可以脱离文档流的,float:left;也可以脱离文档流,就觉得二者是一样的,感觉可以去浮动的方法来解决position:absolute;引起的父元素塌陷问题,结果证明我错了...下边是一个demo. 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8"> 5 <title></title> 6 &l

css脱离文档流

Q:什么是文档流? A:简单的说可以理解为元素在页面上出现的先后顺序. Q:什么情况下会脱离文档流? A:当使用“浮动”与“绝对定位”时. Q:脱离文档流就不占据空间了吗? A:可以这么说.更准确地一点说,是一个元素脱离文档流之后,其他的元素在定位的时候会当做没看见它,两者位置重叠都是可以的. Q: 脱离文档流是不是指该元素从dom树中脱离? A: 不是,用浏览器的审查元素就可以看到脱离文档流的元素(例如被float了)依然会出现在dom树里. 需要注意的是,使用float脱离文档流时,其他盒子

从文档流认识html

写html,css的同学应该需要清楚什么是文档流.文档流:将窗体自上而下分成一行一行,并在每行中按从左至右的挨次排放元素,即为文档流. 每个非浮动块级元素都独有一行, 浮动元素则按规则浮在行的一端. 若当时行容不下, 则另起新行再浮动.内联元素也不会独有一行. 一切元素(包括块级,内联和列表元素)均可生成子行, 用于摆放子元素.有三种状况将使得元素离开文档流而存在,分别是浮动.绝对定位.固定定位.然则在IE中浮动元素也存在于文档流中. 浮动元素不占任何正常文档流空间,而浮动元素的定位照样基于正常

关于css浮动框是否脱离文档流的分析

在了解浮动属性之前,首先我们先了解一下html中关于display属性的相关知识. display属性常用的有inline, block, inline-block. inline也就是内联的意思. 常见的html标签中如 span, font, a, b, em 都是内联元素. 所谓内联,简单理解就是不会换行的元素. <body> <b>bold element</b> <a href="http://www.google.com">g

前端学习 -- Css -- 文档流

文档流 文档流处在网页的最底层,它表示的是一个页面中的位置, 我们所创建的元素默认都处在文档流中 元素在文档流中的特点 块元素 块元素在文档流中会独占一行,块元素会自上向下排列. 块元素在文档流中默认宽度是父元素的100%. 块元素在文档流中的高度默认被内容撑开. 内联元素 1.内联元素在文档流中只占自身的大小,会默认从左向右排列,如果一行中不足以容纳所有的内联元素,则换到下一行,继续自左向右. 2.在文档流中,内联元素的宽度和高度默认都被内容撑开. 当元素的宽度的值为auto时,此时指定内边距