一、浮动模型

元素默认是static的,不能浮动,但可以用CSS样式设置为浮动

浮动模型只有两个值 float:left 和 float:right ,可以让块状元素同行显示

二、层模型

top/bottom/left/right是层模型的值,即是绝对定位、相对定位和固定定位的值

<!--不要和浮动模型搞混了,这四个值不要用到float上去了-->

三、相对定位

相对于以前的位置进行定位/移动

四、绝对定位

相对于其最接近的含有定位属性的父包含块进行移动

元素的默认定位属性是static,是静止的,不属于含有定位属性

具有定位属性是指要给元素设置除position:static外的其他定位属性,如绝对、相对、固定定位等

五、绝对定位和相对定位的组合使用

作用:实现元素相对于前辈元素移动

方法:

1. 前辈元素加入相对定位 position:relative

2. 后辈元素加入绝对定位 position:absolute ,然后用top/bottom/left/right实现相对于前辈元素的移动

六、水平居中

设置浮动和相对定位水平居中的原理是:

先让父元素float到最左端,然后为其设置相对定位,右移50%;再为子元素设置相对定位,相对父元素左移50%,最终实现居中

七、垂直居中

利用table自带的vertical-align:middle属性进行居中

方法1:给td或者table的高度设置具体的数值,可以看到垂直居中效果

方法2:给table的高度设置百分比

<!--给td的高度设置百分比,会按内容的高度显示,没有意义,看不到垂直居中效果-->

table的高会按父包含块的百分比显示,可以看到居中效果

<!--没有父包含块也看不到居中效果-->

问:如何让table基于浏览器窗口垂直居中?

答:可以给table设置定位,让其变成图层,设置height:100%  <!--就是让table的高和父元素一样长-->

1. 设置绝对定位absolute,table的高会有变化,如果有含有定位属性的父包含块,基于父包含块垂直居中;如果没有父包含块,基于浏览器窗口垂直居中

2. 设置相对定位relative,table的高无变化,相对定位本身是相对于自己定位,所以若不是用来移动,没有什么用

3. 设置固定定位fixed,table的高有变化,固定定位是相对于浏览器窗口而言的,所以高会按浏览器窗口的100%显示,可以实现基于浏览器窗口垂直居中

总结:要想利用table的垂直居中属性,得给table一定的高度,才能看到垂直居中效果

回顾CSS布局易混淆的概念的更多相关文章

  1. C语言一些易混淆的概念

    ①数组指针和指针数组 1. 数组指针用于指向一个数组,数组名是数组首元素的地址(数组名为数组首元素类型且指向首元素的指针,如int array[5] ,array为指向array[0]的指针且类型为i ...

  2. Java多线程中易混淆的概念

    概述 最近在看<ThinKing In Java>,看到多线程章节时觉得有一些概念比较容易混淆有必要总结一下,虽然都不是新的东西,不过还是蛮重要,很基本的,在开发或阅读源码中经常会遇到,在 ...

  3. .NET 中易混淆的概念(Delegate vs Event)

    事件(event)是一个非常重要的概念,我们的程序时刻都在触发和接收着各种事件:鼠标点击事件,键盘事件,以及处理操作系统的各种事件.所谓事件就是 由某个对象发出的消息.比如用户按下了某个按钮,某个文件 ...

  4. JQuery中易混淆的概念

    append(): 向每个匹配的元素内部追加内容. <p>I would like to say: </p> $("p").append("< ...

  5. 关于 Delphi 中的Sender和易混淆的概念(转)

    /////////////////////////////////////////////////////// Delphi 中Sender对象的定义///////////////////////// ...

  6. css常见的易混淆属性和值的区别(一)

    css的属性很多,每一个属性的值也很多,组合起来便有成千上万种.不同属性之间的相互组合也可以产生不同的样式,css真是一种优美的样式设计语言.下面对工作中常见的易混淆的属性和值进行总结: 1. lin ...

  7. C#中一些易混淆概念总结

    C#中一些易混淆概念 这几天一直在复习C#基础知识,过程中也发现了自己以前理解不清楚和混淆的概念.现在给大家分享出来我的笔记: 一,.NET平台的重要组成部分都是有哪些 1)FCL (所谓的.NET框 ...

  8. [浅谈CSS核心概念] CSS布局模型:float和position

    1.流动模型 HTML元素在默认情况下都是按照"流动模型"进行布局的,网上也有人称之为"普通流"."文档流"之类的.这种布局模式的特点在于: ...

  9. 【C#小知识】C#中一些易混淆概念总结(七)---------解析抽象类,抽象方法

    目录: [C#小知识]C#中一些易混淆概念总结--------数据类型存储位置,方法调用,out和ref参数的使用 [C#小知识]C#中一些易混淆概念总结(二)--------构造函数,this关键字 ...

随机推荐

  1. EBS R12.2应用层关闭脚本的执行过程

    $ pwd /app/oracle/apps/VIS/fs1/inst/apps/VIS_erptest/admin/scripts $ ./adstpall.sh apps/apps You are ...

  2. fiddler note

    一晚上终于找到对的东西,作者很专业,这里作为笔记,想学习好东西还是到作者那里^_^ ---------------------------------------------------------- ...

  3. 执行gem install linne时报错

    由于linner安装实际上是从 rubygems.org 获得的,而其被墙,所以,需要寻找国内的镜像进行安装: 第一种方法: gem sources --remove https://rubygems ...

  4. s3c2440 移值u-boot-2016.03 第2篇 支持Nand flash启动

    1, 要求:在4K 的代码以内,完成 NOR NAND 类型判断,初始化 NAND 复制自身到 SDRAM ,重定向. 2, 在 /arch/arm/cpu/arm920t/ 文件夹里 添加一个 in ...

  5. 02-FPGA设计流程介绍——小梅哥FPGA设计思想与验证方法视频教程配套文档

    芯航线——普利斯队长精心奉献 课程目标: 1.了解并学会FPGA开发设计的整体流程 2.设计一个二选一选择器并进行功能仿真.时序仿真以及板级验证 实验平台:芯航线FPGA开发板.杜邦线 实验内容: 良 ...

  6. 初试“七牛云”--零基础运用七牛云配合UEditor实现图片的上传和浏览(.NET篇)

    (注册和建立存储空间就不介绍了,网上一把一把的资料,自己试着点点也能明白) 作为一个成熟的菜鸟,如果遇到一个新问题,第一步当然是先百度一下... 看了N个关于七牛云的使用的帖子,表示还是蒙圈的,看懂了 ...

  7. Android 网络框架 volley源码剖析

    转载请注明出处:  http://blog.csdn.net/guolin_blog/article/details/17656437 经过前三篇文章的学习,Volley的用法我们已经掌握的差不多了, ...

  8. map函数

    概述 map() 方法返回一个由原数组中的每个元素调用一个指定方法后的返回值组成的新数组. 语法 array.map(callback[, thisArg]) 参数 callback 原数组中的元素经 ...

  9. LA 3523 圆桌骑士

    题目链接:http://vjudge.net/contest/141787#problem/A http://poj.org/problem?id=2942 此题很经典 知识点:DFS染色,点-双连通 ...

  10. ado.net C#如何实现数据库增删改查

    ado.net数据库访问技术将数据库中的数据,提取到内存中,展示给用户看还可以将内存中的数据写入数据库中去 并不是唯一的数据库访问技术,但是它是最底层的数据库访问技术也就是说是最麻烦但是是最不可缺少的 ...