float浮动布局(慕课网CSS笔记 + css核心技术详解第四章)
----------------------------------------------------------------------
CSS中的position:
CSS三种布局方式:
标准流:网页中默认的布局方式,即顺序布局。html元素可以分为两大类:块级元素(div,h1…h6,ol,ul,li,table,p段落等)和内联元素(a超链接,span文字,img图片,input控件)。块级元素总是独占一行,内联元素是和相邻的内联元素在同一行,如果一行内宽度不够时,才被挤到另一行上去。;
定位:position定位属性通过改变正常的标准流,以非正常的方式迫使元素脱离标准流。position属性决定了元素如何进行定位,通过top,right,bottom,left实现位置的改变。
position中有5个可选的参数: (层级概念:定位的元素总是在普通流的上面,除非手动指定 z-index 属性,当z-index的值设置小于0时,将会被标准流盖住。)
static:默认值,元素按照标准流的方式进行正常的排列,在一个原本你想定位,后来又不想要定位的元素上就可以使用这个属性,一般配合javascript来使用。
relative是指相对定位,使用了position:relative的元素任然处于正常的文档流中,relative元素按照原来在标准流中的位置进行定位,可以通过top,right,bottom,left来改变元素的位置,当设置元素的left和top属性时,元素相对于网页的最左起始点为原点,向右为x轴正方向,向下为y轴正方向,当我们设置了right和bottom属性,元素相对于网页的最左起始点为原点,向左为x轴正方向,向上为y轴正方向。有了层级的概念。父元素定位到哪,子元素也会跟随到哪。
absolute:绝对定位,使用了absolute属性的元素通过设置left,right,top,bottom等值,使absolute元素脱离正常的文档流进行布局,在整个网页中都拥有了层级的概念,后写的元素将覆盖先写的元素,越后面的元素层级越高。如果absolute元素的父元素不具有定位属性,那么absolute元素将以网页窗口的四个角进行定位,反之如果它在一个定位的父元素里,那么它的定位起点将在父元素的当前位置上进行定位(根据包含块的位置来初始化子元素的位置)。当设置元素的left和top属性时,元素相对于网页窗口的最左起始点为原点,向右为x轴正方向,向下为y轴正方向,当我们设置了right和top属性,元素相对于网页窗口的最右端起始点为原点,向左为x轴正方向,向下为y轴正方向。当我们设置了left和bottom属性,元素相对于网页窗口的最左下角起始点为原点,向右为x轴正方向,向上为y轴正方向。当我们设置了right和bottom属性,元素相对于网页窗口的最右下角起始点为原点,向左为x轴正方向,向上为y轴正方向。一个行内元素一旦设置了这个属性,其宽度,高度等属性将会生效。父元素定位到哪,子元素也会跟随到哪。
fixed:固定定位,使用了fixed固定定位的元素配合top,right,bottom,left这四个位置属性来设置元素的位置,元素会脱离正常的文档流,在整个浏览器窗口(视口)进行定位,并拥有层级的概念,带有fixed固定定位的元素将在整个窗口进行位置移动,常用的使用场景有对联广告,登陆弹窗等,和absolute决定定位类似,left:0px;top:0px的位置在窗口左上角,right:0px;top:0px的位置在窗口右上角,left:0px;bottom:0px的位置在窗口左下角,right:0px;bottom:0px的位置在窗口右下角,(任何元素对固定定位fixed是没有约束力的,即使固定定位元素的父元素有定位属性。)一般情况下都会将absolute的元素放在relative里面,这样它总是跟随父元素走。
inherit:继承父元素的定位属性。;
float浮动布局:
带有float浮动属性的元素都会变成块级元素,脱离文档流进行布局,但是float元素依然占据正常文档流文本空间。CSS三种布局方式:标准流,定位,浮动。浮动使得元素脱离了正常的标准流,浮动的元素不再占有原始标准流中的空间,会导致父元素无法检测子(浮动)元素的高度,而产生父元素高度塌陷的问题。浮动副作用(父元素高度塌陷)问题的解决:1.手动给父元素添加高度。2.通过clear清除内部和外部的浮动。clear属性的四个参数:clear:none,clear:left不允许左边有浮动的对象,clear:right不允许右边有浮动的对象,clear:both不允许有浮动的对象。 3,给父元素添加overfloat属性并结合zoom:1使用。overflow是用来处理溢出问题的。overflow:hidden会截取超出父元素之外的元素,使其不可见。zoom:1是ie专用的一个属性,通过子元素的总体高度来放大缩小父元素的高度,导致父元素拥有了高度。4,给父元素添加浮动。
float浮动布局(慕课网CSS笔记 + css核心技术详解第四章)的更多相关文章
- Float浮动(慕课网学习笔记)
float浮动 属性:值 意义 float:left 左浮动 float:right 右浮动 float:none 不浮动 float:inherit 继承父元素浮动属性,若父元素没有浮动属性则失效 ...
- 《Android群英传》读书笔记 (2) 第三章 控件架构与自定义控件详解 + 第四章 ListView使用技巧 + 第五章 Scroll分析
第三章 Android控件架构与自定义控件详解 1.Android控件架构下图是UI界面架构图,每个Activity都有一个Window对象,通常是由PhoneWindow类来实现的.PhoneWin ...
- Css深入理解之浮动_慕课网课程笔记
前言 这篇是在慕课网上跟着张鑫旭重走CSS之路的第三篇学习笔记了,主要是学习float属性,闲话少说,下面进入正文. float的历史 要想了解一个东西,我们还是需要从本质去了解它,那么我们就需要问一 ...
- HTML+CSS笔记 CSS笔记集合
HTML+CSS笔记 表格,超链接,图片,表单 涉及内容:表格,超链接,图片,表单 HTML+CSS笔记 CSS入门 涉及内容:简介,优势,语法说明,代码注释,CSS样式位置,不同样式优先级,选择器, ...
- css样式继承规则详解
css样式继承规则详解 一.总结 一句话总结:继承而发生样式冲突时,最近祖先获胜(最近原则). 1.继承中哪些样式不会被继承? 多数边框类属性,比如象Padding(补白),Margin(边界),背景 ...
- css之Grid Layout详解
css之Grid Layout详解 CSS Grid Layout擅长将页面划分为主要区域,或者在从HTML基元构建的控件的各个部分之间定义大小,位置和图层之间的关系. 与表格一样,网格布局使作者能够 ...
- css 之position用法详解
css 之position用法详解: http://www.jb51.net/web/77495.html
- DIV css中cursor属性详解-鼠标移到图片变换鼠标形状 (转)
css中cursor属性详解-鼠标移到图片变换鼠标形状 语法: cursor : auto | all-scroll | col-resize| crosshair | default | han ...
- Css盒模型属性详解(margin和padding)
Css盒模型属性详解(margin和padding) 大家好,我是逆战班的一名学员,今天我来给大家分享一下关于盒模型的知识! 关于盒模型的属性详解及用法 盒模型基本属性有两个:padding和marg ...
随机推荐
- (转)vimdiff 快速比较和合并少量文件
vimdiff 快速比较和合并少量文件 原文:http://www.cnblogs.com/abeen/p/4255754.html 纯文本文件比较和合并工具一直是软件开发过程中比较重要的组成部分,v ...
- (转)Linux最常用指令及快捷键 Linux学习笔记
Linux最常用指令及快捷键 Linux学习笔记 原文:http://blog.csdn.net/yanghongche/article/details/50827478 [摘自 鸟叔的私房菜]--转 ...
- php安装错误 (node.c:1953:error) 解决办法
CentOs安装PHP在make时报错: root@---- [/opt/php-5.2.17]# make /bin/sh /opt/php-5.2.17/libtool --silent --pr ...
- linux安装gcc和gcc-c++
有些VPS中使用的是精简版Linux,上篇linux下自动备份blog到dropbox中的gcc和gcc-c++编译器没安装,无法编译出链接的"hostid",下面是Linux安装 ...
- java实现定时任务(Quartz)
java中实现定时任务执行某一业务.具体操作如下: 1.定义初始化任务 2.任务业务操作 3.定义初始化方法 4.在web.xml中注册启动 5.定义具体执行时间 6.quartz定时任务时间设置 q ...
- 如何在数据库中导入excel文件内的数据
如何在数据库中轻松导入excel格式的文件 1)打开sql server,找到要导入数据的数据库,右键>>任务>>导入数据 2)按照图示选择要导入的excel 3)选择导入到哪 ...
- 《C#高效编程》读书笔记11-理解短小方法的优势
我们最好尽可能的编写最清晰的代码,将优化交给JIT编译器完成.一个常见的错误优化是,将大量逻辑放在一个函数中,以期减少额外的方法调用开销.这种将函数逻辑直接写在循环内部的常见优化做法却会降低.NET应 ...
- hibernate课程 初探单表映射1-2 ORM定义
1 什么是ORM? ORM(Object / RelationShip Mapping) 对象/关系映射 面向对象编程(OOP)最终要把对象信息保存在关系性数据库中,要写好多sql语句.这与面向对象编 ...
- Js常见算法实现汇总
/*去重*/ <script> function delRepeat(arr){ var newArray=new Array(); var len=arr.length; for(var ...
- rem媒体查询
@media only screen and (min-width: 1080px), only screen and (min-device-width:1080px) { html,body { ...