博客
关于我
WEB--CSS浮动
阅读量:579 次
发布时间:2019-03-11

本文共 1066 字,大约阅读时间需要 3 分钟。

文档流与定位技术

文档流

文档流是HTML元素按照书写顺序从上到下,从左到右按照特定规则排列的过程。块元素占据独自的行,行内元素则在一行内从左到右排列,先书写的先排列,后书写的排在后面。每个块元素都占据自己固定的空间位置。

浮动元素特性

浮动元素有两种类型:左浮动(float:left)和右浮动(float:right)。浮动元素会向左或向右移动,直到碰到父元素边界、浮动元素之间的区域、未浮动的元素或块元素时才停止。相邻的浮动块元素可以并排放置,但如果超出父级宽度则会换行。此外,浮动元素会使其后面或前面未浮动的元素自动转化为行内块元素,从而形成文字饶图的效果。需要注意的是,浮动元素的父级如果也有浮动,则需要使用css clear属性来清除浮动,避免父级被撑开。浮动元素之间的垂直间距不会合并。

清除浮动

常见的清浮动方式

  • 在父级元素中设置overflow:hidden属性
  • 在最后一个子元素后面添加一个空白div,并为其设置clear:both样式(不建议使用)
  • 使用 clearfix类,该类通常定义为:
.clearfix:after,.clearfix(before){content:"";display:table;} .clearfix:after{clear:both;}.clearfix{zoom:1;}

定位技术

定位类型

  • relative(相对定位):生成相对定位块元素,元素不脱离文档流,相对自身的位置进行偏移
  • absolute(绝对定位):生成绝对定位元素,脱离文档流,可相对已经具有绝对定位或相对定位的父级元素位置进行定位,无父级则相对浏览器窗口定位
  • fixed(固定定位):生成固定定位元素,脱离文档流,相对浏览器窗口定位
  • static(静态定位):默认值,不生成block、inline-block等布局,元素在文档流中的位置不变

定位与浮动的对比

  • relative 与 absolute 的主要区别是是否脱离文档流
  • absolute 是相对最近已定位的父级,如果没有则相对于浏览器窗口
  • fixed 是相对浏览器窗口

定位元素的特性

绝对定位或固定定位的块元素会自动转化为行内块元素,这意味着它们后面或前面未浮动的元素会避开它们形成文字饶图的效果。定位元素不仅脱离文档流,还可以通过z-index属性调整层级,以实现多层次的布局效果。

定位元素的层级管理

与其他元素相比,定位元素通常会浮在文档流之上。要实现多层级的定位,可以通过z-index属性进行层级管理,这对于网页多层次布局非常有用。

转载地址:http://ptztz.baihongyu.com/

你可能感兴趣的文章
objectForKey与valueForKey在NSDictionary中的差异
查看>>
Objective - C 小谈:消息机制的原理与使用
查看>>
OBJECTIVE C (XCODE) 绘图功能简介(转载)
查看>>
Objective-C ---JSON 解析 和 KVC
查看>>
Objective-C 编码规范
查看>>
Objective-Cfor循环实现Factorial阶乘算法 (附完整源码)
查看>>
Objective-C——判断对象等同性
查看>>
objective-c中的内存管理
查看>>
Objective-C之成魔之路【7-类、对象和方法】
查看>>
Objective-C享元模式(Flyweight)
查看>>
Objective-C以递归的方式实现二叉搜索树算法(附完整源码)
查看>>
Objective-C内存管理教程和原理剖析(三)
查看>>
Objective-C实现 Greedy Best First Search最佳优先搜索算法(附完整源码)
查看>>
Objective-C实现 jugglerSequence杂耍者序列算法 (附完整源码)
查看>>
Objective-C实现 lattice path格子路径算法(附完整源码)
查看>>
Objective-C实现1000 位斐波那契数算法(附完整源码)
查看>>
Objective-C实现2 个数字之间的算术几何平均值算法(附完整源码)
查看>>
Objective-C实现2d 表面渲染 3d 点算法(附完整源码)
查看>>