首先应该明白什么是流?这个估计也很容易明白,我就不说了。顺便说下,float设置了这个属性就暂时脱离了流的存在,clear后才会到流里面。

position:absolute| fixed | relative| static | inherit

默认的HTML流属性其实就是指position:static。如果我们想要在页面上固定显示元素,就选择absolute,它是以页面左上角为(0,0),根据top,left,width,height来布局的,注意这里是根据页面布局。fixed是当前窗口布局,也是左上角为(0,0),不过,fixed是窗口布局,也就是说会根据滚动条一起移动,相对于当前窗口的位置不变。

relative相对位置,是指子节点和父节点的关系。当一个子节点在父节点中时,默认的position就是relative。在子节点包含在父节点中,这个时候就算你设置的是子节点是absolute,这是也会成为relative,也就是相对于父节点的左上角排版。这点其实也很容易理解,没有绝对,只有相对。HTML中所有的元素都是document的子元素。

接着详细说下各种的特点:

(1)static布局是默认,假如在这种布局,他是没有定位的,而且不会继承父元素的属性,W3C文档里面还说忽略 top, bottom, left, right 或者 z-index 声明,他是存在于流里面的。

(2)relative布局是相对布局,假如父元素用了这种布局,那么子元素就是相对于父元素的绝对定位,一般配合top,right,bottom,left来使用,这个布局也是存在于流里面的。

(3)fix布局是“浮动布局”,相对于浏览器窗口的绝对布局(在上下滚动页面时),一般配合top,right,bottom,left来使用,这个布局是脱离了流而存在的。(IE不兼容)

(4)absolute布局是绝对布局,相对于页面的绝对布局(在上下滚动页面时),一般配合top,right,bottom,left来使用,这个布局也是脱离了流而存在的。

(5)inherit布局我比较少用,文档里面他是规定应该从父元素继承 position 属性的值。

js中Dom对象的position属性的更多相关文章

  1. js中Math对象常用的属性和方法

    1 Math对象 1.1定义:Math是js的一个内置对象,它提供了一些数学方法. 1.2特性:不能用构造函数的方式创建,无法初始化,只有静态属性和方法 1.3静态属性 1.3.1 Math.PI 圆 ...

  2. js中window对象的opener属性的一个坑

    2018-05-08 17:48:33 今天我编写代码碰到了一个让我纠结了很久的坑,特别想在此说一下,让其他人避免我踏过的这个坑. 这个坑就是:在我自己写的子窗口中用opener属性却获取不到父窗口的 ...

  3. 详解JS中DOM 元素的 attribute 和 property 属性

    一.'表亲戚':attribute和property 为什么称attribute和property为'表亲戚'呢?因为他们既有共同处,也有不同点. attribute 是 dom 元素在文档中作为 h ...

  4. js中arguments对象和this对象

    js中arguments对象和this属性 如果不注重复习,花时间准备的材料毫无意义 arguments对象和this对象都是对象 直接来代码 <!DOCTYPE html> <ht ...

  5. HTML中DOM对象的属性和方法的层级关系是怎样的?(目录即层次)

    HTML中DOM对象的属性和方法的层级关系是怎样的?(目录即层次) 一.总结 一句话总结:目录就是测试题 1.document取得元素(get element)的方式有哪几种? 解答:四种,分别是id ...

  6. 【学习笔记】六:面向对象的程序设计——理解JS中的对象属性、创建对象、JS中的继承

    ES中没有类的概念,这也使其对象和其他语言中的对象有所不同,ES中定义对象为:“无序属性的集合,其属性包含基本值.对象或者函数”.现在常用的创建单个对象的方法为对象字面量形式.在常见多个对象时,使用工 ...

  7. 前端之JavaScript:JS之DOM对象三

    js之DOM对象三   一.JS中for循环遍历测试 for循环遍历有两种 第一种:是有条件的那种,例如    for(var i = 0;i<ele.length;i++){} 第二种:for ...

  8. js的DOM对象

    1.js的Array对象           ** 创建数组(三种)                          - var arr1 = [1,2,3];                    ...

  9. JavaScript基础15——js的DOM对象

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

随机推荐

  1. Uva 11542 乘积是平方数

    题目链接:http://vjudge.net/contest/142484#problem/A 这个题目也是2016年CCPC网赛上面的题目,当时我是不会做的,但是大牛们都知道这是一个原题,最后给一队 ...

  2. 浅谈 PHP 与手机 APP 开发(API 接口开发)

    本文内容转载自:http://www.thinkphp.cn/topic/5023.html 这个帖子写给不太了解PHP与API开发的人一.先简单回答两个问题:1.PHP 可以开发客户端?答:不可以, ...

  3. javax.servlet.ServletException: com.ibatis.sqlmap.client.SqlMapException: There is no statement named...问题

    可能存在3种情况: 1.在xxx.xml文件中有两个标签的id命名相同: 2.DAO实现类方法中没有写对应xxx.xml的id名称: 3.实体映射文件xxx.xml未加入到sqlMap-Config. ...

  4. Spring并发访问的线程安全性问题

    Spring并发访问的线程安全性问题 http://windows9834.blog.163.com/blog/static/27345004201391045539953/ 由于Spring MVC ...

  5. [问题2014S10] 复旦高等代数II(13级)每周一题(第十教学周)

    [问题2014S10]  设 \(A,B\) 为 \(n\) 阶方阵, 证明: \(AB\) 与 \(BA\) 相似的充分必要条件是 \[\mathrm{rank}\big((AB)^i\big)=\ ...

  6. PHP 可变长度参数列表

    In PHP 5.6 and later, argument lists may include the ... token to denote that the function accepts a ...

  7. ubuntu14.04纯命令行下连接有线网和无线网

    在ubuntu下网络管理器Network Manager莫名奇妙出现无法连接无线网的情况,于是昨天就开始着手解决这一问题: 一 :卸载 1.第一步卸载Network-Manager (具体字母的大小写 ...

  8. java程序调用存储过程

    java程序调用存储过程       PL/SQL子程序,很多情况下是给应用程序来调用的,所有我们要掌握使用其他编程语言来调用我们写好的存储过程.下面我们介绍下使用java调用Oracle的存储过程. ...

  9. js中对radio和checkbox是否选中的判断

    一.js判断checkbox 例如:<div class="checkbox" style="width: 150px;"> <label&g ...

  10. 进程、线程、socket套接字-资源大小 & 切换代价

    另,进程 & 线程的很多知识可以看这里:http://www.cnblogs.com/charlesblc/p/6135666.html 今天查了一下进程和线程的资源占用. 比如问:栈和堆的大 ...