浅谈web布局中的“float”属性  

  对于刚学习web前端的同学,布局和排版都是一个难点。虽然我们能够通过各种调试实现我们希望得到的页面效果,但是如果不把其中的道理弄清楚的话,在下次布局的时候,也无法对整体页面有一个比较全面的掌控。只要弄清楚其中的道理,实现页面的良好布局并不是一件特别难的事情。下面,我就谈谈我学习布局的经验~初来乍到,多多指教~!

1.理解“流”

  要学会web布局,首先要理解“流”的概念和工作原理。“流”,形象一点说,就像水流一样,浏览器从html文件的开头,把元素流入页面中,块级元素独占一行,内嵌元素共享一行,按html文件中的顺序一个接一个的把它们“流”到页面上,直到将最后一个元素放到页面上,这就是我们常说的“正常文档流”。这是浏览器默认的元素放置方式。这些元素按照它们的规则和顺序被放置在同一层中。

块级元素独占一行,内嵌元素共享一行

  很简单,块级元素在文档流中前后都有换行,故独占一行。而内嵌元素呢?内嵌元素会在水平方向上一个接一个地流,从左到右直到没有足够的空间,就流到下一行。

2.“float”浮动的原理

  在我们的布局工具中,有一个叫“float”属性,意思是“浮动”。“float”属性有两个值:“left”、“right”。简单来说,“float”属性就是让一个元素尽可能的靠左或靠右。既然叫做“浮动”,那么它当然是漂浮在正常文本流之上的。因此,它脱离了正常文本流,然后再文本流之上,尽可能的浮动到左(右)边。那么,原先页面中的元素会如何放置呢?

  就像湖里的水流一样,你从中舀走一碗,旁边的水流就会填充过来,湖面还是如镜面一般平坦。当文本流中的一个元素被“float”漂浮起来时,跟在它后面的元素就会填充它原本的位置。

对于正常文档流中的元素,被“float”的元素就像不存在一样。你甚至会发现,浮动元素遮住了下面正常文本流中的块元素。注意!正常文本流中的内嵌元素可不同,当内嵌元素遇到浮动元素时,它们会包围在浮动元素边界的周围(最初“float”就是用于实现文字环绕图片的效果的)。

3.使用“float”,你还需要知道:

  “float”属性浮动的位置跟你的html文件中添加了“float”属性的元素的位置顺序有关,浮动元素只会跟在它的上一个元素(html文件中,浮动元素的上一个元素)后面进行浮动。

web学习总结之布局的更多相关文章

  1. (数据科学学习手札103)Python+Dash快速web应用开发——页面布局篇

    本文示例代码已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 1 简介 这是我的系列教程Python+Dash快速web ...

  2. Web学习之css

    CSS指层叠样式表(Cascading Style Sheets),CSS 是标准的布局语言,用来控制元素的尺寸.颜色.排版.CSS 由 W3C 发明,用来取代基于表格的布局.框架以及其他非标准的表现 ...

  3. WEB学习感受

    web学习感受 1.html前端知识比较好学,各种标签只需要记住关键的就行例如:body h1,p,div,tr,td,ul,li,就行了. 2.css学习前期还好, 后期关键布局和样式知识点较多,而 ...

  4. 零基础快速入门web学习路线(含视频教程)

    下面小编专门为广大web学习爱好者汇总了一条完整的自学线路:零基础快速入门web学习路线(含视频教程)(绝对纯干货)适合初学者的最新WEB前端学习路线汇总! 在当下来说web前端开发工程师可谓是高福利 ...

  5. WEB学习路线2019完整版(附视频教程+网盘下载地址)

    WEB学习路线2019完整版(附视频教程+网盘下载地址).适合初学者的最新WEB前端学习路线汇总! 在当下来说web前端开发工程师可谓是高福利.高薪水的职业了.所以现在学习web前端开发的技术人员也是 ...

  6. 【Flutter学习】页面布局之基础布局组件

    一,概述 Flutter中拥有30多种预定义的布局widget,常用的有Container.Padding.Center.Flex.Row.Colum.ListView.GridView.按照< ...

  7. Java Web 学习路线

    实际上,如果时间安排合理的话,大概需要六个月左右,有些基础好,自学能力强的朋友,甚至在四个月左右就开始找工作了.大三的时候,我萌生了放弃本专业的念头,断断续续学 Java Web 累计一年半左右,总算 ...

  8. 【转载】Web移动端Fixed布局的解决方案

    特别声明:本文转载于EFE的<Web移动端Fixed布局的解决方案>.如需转载,烦请注明原文出处:http://efe.baidu.com/blog/mobile-fixed-layout ...

  9. 12个学习 CSS3 网站布局设计的优秀案例

    网络上有很多的 CSS 画廊站点供大家对各类网站作品进行打分和评论,每天有数以百计的优秀网站被推荐上面,这对于网页设计师来说是很好的灵感来源.今天,我们选择了15赢得 CSS 设计大奖的优秀作品,帮助 ...

随机推荐

  1. fzu 2150 Fire Game 【身手BFS】

    称号:fzupid=2150"> 2150 Fire Game :给出一个m*n的图,'#'表示草坪,' . '表示空地,然后能够选择在随意的两个草坪格子点火.火每 1 s会向周围四个 ...

  2. Cocos2d-x 游戏植入广告(百度插屏)

    DEMO下载:http://download.csdn.net/detail/oyangyufu/7652803 1.声明Activity <!-- 声明百度的Activity --> & ...

  3. spring多数据源的配置(转)

    C3P0和DBCP的区别 C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC3规范和JDBC2的标准扩展.目前使用它的开源项目有Hibernate,Spring等.   d ...

  4. 理解Android虚拟机体系结构(转)

    1 什么是Dalvik虚拟机 Dalvik是Google公司自己设计用于Android平台的Java虚拟机,它是Android平台的重要组成部分,支持dex格式(Dalvik Executable)的 ...

  5. hdu 3911 Black And White(线段树)

    题目连接:hdu 3911 Black And White 题目大意:给定一个序列,然后有M次操作: 0 l r:表示询问l,r中最大连续1的个数 1 l r:表示将l,r区间上的数取反 解题思路:线 ...

  6. Properties类读写.properties配置文件

    package com.hzk.utils; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFo ...

  7. 【日报C在23】堆和栈的深入了解

    每日一C之堆与栈的深入理解        每天拾一个C语言贝壳,厚积薄发,积跬步以致千里.  今日贝壳:内存中堆与栈的深入理解.认识一个清晰地内存                          假 ...

  8. gcd&&lcm

    1011 最大公约数GCD 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题  收藏  关注 输入2个正整数A,B,求A与B的最大公约数.   Input 2个数A,B,中 ...

  9. table中的边框合并实例

    <html><head><style type="text/css">table,th,td{border:1px solid blue;bor ...

  10. crawler_google工作原理