当前位置: 首页 > Web前端 > CSS

优秀程序员web前端学习路线分享CSS浮动文档流

时间:2023-03-30 15:15:03 CSS

优秀程序员web前端学习路线分享CSS浮动文档流,纯文本的排列,文档流就像我们的文字内容,所有的文字他们都会挨着挨着,一一排列。如果他们到达边界,他们将被安排在另一排。当然,如果你敲回车或者按空格键,一般都会认为是单词间隙,因为英语中每个单词之间是有距离的,不像汉字是连在一起的。所以不管你打了多少个回车,不管你打了多少个空格。该程序只考虑单词之间的一个空格距离。我们称这种现象为空白折叠现象。下图红色箭头是回车加空格的效果。图片说明    文字与图片的排列  因为是图文排版,所以图片的宽度是一个整体。不像文字可以在中间分开,我们会发现当图文放在一起时,图片作为文档流中的内容,和一个文字元素一样,在上一个文字的旁边,在后面的文字按照图片。但是如果一行的剩余位置不够图片的宽度,就会自动换成一行。  因为图片和文字元素是一样的,所以如果图片的高度大于文字的高度,那么线条就会抬高。图片越高,线越高。同一行的文字默认会出现在图片的底部。如果想让文字相对在图片中间,需要给图片设置一个CSS样式vertical-align:middle;注意一定要为图片设置,不能为文字设置。图片说明    当然,如果我们设置两张图片,注意下面两张图片之间的空隙,原因是之间有换行符。根据以上文字的特点,这里难免会产生一张空白的图片描述    。如何解决这个问题,一开始有很多方法。最简单的就是把两个标签连起来写不包裹图片描述    块元素和内联元素  刚才说的都是内联元素,就是添加内容后会自动放在上面一条线。如果页面的剩余宽度小于要放置的元素,那么该行将自动换行。  除了文本和图像之外,还有一些其他HTML标签也是内联元素。例如:  内联元素...内联元素...链接换行...加粗...加粗图片...上标...下标...斜体...斜体...删除线...下划线TextBox...多行文本...如果直接写在下拉列表上方的所有行内元素,将存在于同一行代码中间。当然,newlinebr会将后面的元素放在另一行。有时候我们希望一段内容可以独立运行。这样我们就有了块元素。块元素将单独排成一排,与行内元素明显区分开来。例如:

地址文本
...
居中

...

一级标题

...

二级标题

...

标题三级

...

标题四级
...
标题五级
...
标题级六个水平分隔符

...

段落
...
预格式化
...
段落
    ...前后缩进5个字符
      ...
    无序列表
      ...
    有序列表
    ...
    定义列表...form
    ...
    form
    ...
    块容器  块元素和行内元素具体有什么区别?内联元素与块级元素并列输入内联元素,自动并排输入块级元素,自动换行,独立占一行,其他内联元素不一起。内联元素的部分内容是不能设置宽高的,比如span容器,超链接标签等,当然有些还是可以通过CSS样式来改变宽高的,比如input、img、textarea等非文本标签块元素可以直接设置宽高。如果没有设置,会自动根据元素父容器的宽度设置为100%。高度根据内容展开。如果没有内容,块元素默认高度为0,这一点很重要。内联元素和块元素相互转换内联元素和块元素可以相互转换,例如:内联元素转换为块元素  这是默认的内联元素图片说明  这是转换后的。我们发现文本块已经换行,独立占一行。这里我们设置display:blockimagedescription块元素转换为行内元素。这是图片描述  设置为行内元素后div默认的块元素样式。我们发现宽高不对。一旦块级元素被设置为行内元素,原有的宽高就失效了。图片说明  block元素和inline元素转换为inlineblock元素有时候我们希望容器(不是textArea或input)的width和height都排列在同一行,我们可以转换为inline-block容器。具体来说,我们想在同一行中放置多个不同宽高的容器,并且可以通过margin调整它们的位置(注意:内联元素不能通过margin调整垂直位置,因为它们都在同一行),这时候内联Block元素就非常有必要了。块元素变成行内块元素图片说明行内元素变成行内块元素图片说明    我们发现两者的效果是一样的。  你可能觉得这很棒。我们可以使用图形和文字的混合排列来制作网页,但是注意我们已经把它转换成了行内块元素,而且是行内的。对marginTop的任何更改都会扩大行高。就会变成这样:图片说明  至此我们已经知道了标准的文档流程,在这个标准的文档流程中基本很难排版复杂的图文。所以我们要学会漂浮。浮动就是让容器脱离这个标准的文档流,就像在页面上浮动一样。我们将在下一篇文章中详细讨论这个问题。[1]:/img/bVbxPBo[2]:/img/bVbxPBw[3]:/img/bVbxPBF[4]:/img/bVbxPBI[5]:/img/bVbxPBR[6]:/img/bVbxPBT[7]]:/img/bVbxPBV[8]:/img/bVbxPB4[9]:/img/bVbxPB9[10]:/img/bVbxPCc[11]:/img/bVbxPCg