初中物理就学过,位置是相对的,要有参照物,因此,所有定位都是相对参照物的定位。

position 属性:

规定元素的定位类型,该属性的可选值有static、relative、absolute、fixed、inherit。定义了position属性后,经常还要定义相对参照物的偏移量,即left,right,top,bottom属性值,当然,也可以不定义,那样的话,就是在参照物的位置上。

float属性:

    规定元素是否浮动,其实,这个属性也是定位的一种类型,但搞不懂为什么它没有出现在position可选值中,而非要做成一个单独的属性,比较可能的原因是,在position的可选值中(static除外),是指定相对参照物的具体偏移量——left,right,top,bottom,而浮动指定的不是具体的偏移量,而只是偏移方向而已,浮动的框只能向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止。因此两种定位方式没法统一起来。

Z-index属性:

上面的定位都在是二维空间做的,定位过程中有可能出现元素部分重叠的情况,这种情况下,谁覆盖谁呢,由此引用了Z-index属性,来指定元素的层次。注意:static定位的元素,其Z-index恒等于0,无法修改;另外,Z-index属性只能用于position=relative/absolute/fixed这些已经在二维空间定位过的元素。

属性       定位参照物         

是否仍占据文档流的位置

描述
 position   static

由文档流自然形成

默认值,,无需显式定义。元素出现在正常的流中(忽略 top, bottom, left, right, z-index 声明)。

relative

相对自己在文档流中的位置

是,该元素在文档流中占据的空间不会释放

生成相对定位的元素,相对于其文档流位置进行定位。

元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。

absolute

相对第一个定位过的父元素,即position=relative/absolute/fixed的父元素,(static定位过的父元素不算)

否,已经脱离文档流

生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位。

元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。

fixed

相对浏览器窗口

否,已经脱离文档流

生成绝对定位的元素,相对于浏览器窗口进行定位。

元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。

inherit 继承父元素的定位类型 由父元素的定位类型来确定 规定应该从父元素继承 position 属性的值。
float left、right、none、inherit 相对父元素(不论是否定位过)和前一个浮动框 否,已经脱离文档流 浮动的框只能向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止

HTML中元素的定位方式的更多相关文章

  1. selenuim中18种定位方式

    18种定位方式=8种单数形式+8种复数形式+2种底层方案 单数可以确定唯一,复数无法确定: 单数形式定位,返回的是一个元素,复数形式,返回的是一个列表,返回的是当前页面所有符合要求的元素,没有意义 一 ...

  2. Android中几种定位 方式

    介绍的几种定位方式 http://www.cnblogs.com/cuihongyu3503319/p/3863867.html 百度地图api: http://lbsyun.baidu.com/in ...

  3. ie中弹出框中元素的定位

    用selenium在ie8浏览器中定位一个弹出框时,直接用ie developer tools可能不一定能定位到,有一个解决的办法是直接在url后面加上#noHide,刷新后,然后再用ie devel ...

  4. Selenium多层级的iframe中元素的定位

    很多时候我们遇到多层级的iframe就会想各种方法去获取iframe中的元素,但其实很简单就可以做到的,就是一级一级获取就可以了,获取至你需要的那个层级即可,下面看下实际的案例:(转) <fra ...

  5. css中对position的几种定位方式的最佳诠释

    关于元素的position定位的理解,牛客网的hardy给出了一个比较好的理解: 在html中网页可以看成一个立体的空间,一个完整的页面是由很多个页面堆积形成的,如上图所示   CSS中Positio ...

  6. css中元素定位

    在html中网页可以看成一个立体的空间,一个完整的页面是由很多个页面堆积形成的,如下图所示 CSS中Position属性有四个可选值,它们分别是:static.absolute.fixed.relat ...

  7. App自动化之dom结构和元素定位方式(包含滑动列表定位)

    900×383 38 KB 先来看几个名词和解释: dom: Document Object Model 文档对象模型 dom应用: 最早应用于html和js的交互.界面的结构化描述, 常见的格式为h ...

  8. 七 APPIUM Android 定位方式

    1.定位元素应用元素   1.1通过id定位元素 Android里面定位的id一般为resrouce-id: 代码可以这样写: WebElement element = driver.findElem ...

  9. APPIUM Android 定位方式

    原文地址https://www.cnblogs.com/sundalian/p/5629500.html 1.定位元素应用元素 1.1通过id定位元素 Android里面定位的id一般为resrouc ...

随机推荐

  1. 洛谷 P1070 道路游戏 解题报告

    P1070 道路游戏 题目描述 小新正在玩一个简单的电脑游戏. 游戏中有一条环形马路,马路上有\(n\)个机器人工厂,两个相邻机器人工厂之间由一小段马路连接.小新以某个机器人工厂为起点,按顺时针顺序依 ...

  2. python之旅:面向对象进阶

    一 isinstance(obj,cls)和issubclass(sub,super) isinstance(obj,cls)检查是否obj是否是类 cls 的对象 class Foo(object) ...

  3. Python之文件与目录操作(os、zipfile、tarfile、shutil)

    Python中可以用于对文件和目录进行操作的内置模块包括: 模块/函数名称 功能描述 open()函数 文件读取或写入 os.path模块 文件路径操作 os模块 文件和目录简单操作 zipfile模 ...

  4. laravel 单元测试设置模拟时间

    有时候我们需要对一些超时的逻辑进行测试,需要等待一定的时间来验证超时逻辑是否生效. Carbon 库提供了 setTestNow 方法来设置一个虚拟的当前时间 使用这个特性的前提是:我们的待测试代码利 ...

  5. Qt ------ QTableView QTableWidget

    QTableView model提供数据    view提供视图   view用来显示model的数据   必须将model绑定到某个view中才能显示 QStandardItemModel* mod ...

  6. 使用Sql语句快速将数据表转换成实体类

    开发过程中经常需要根据数据表编写对应的实体类,下面是使用sql语句快速将数据表转换成对应实体类的代码,使用时只需要将第一行'TableName'引号里面的字母换成具体的表名称就行了: declare ...

  7. python deamon(守护)线程的作用

    stackoverflow 上的解释 某些线程执行后台任务,例如发送keepalive数据包,或执行定期垃圾收集,或任何.这些仅在主程序运行时有用,并且一旦其他非守护程序线程退出就可以将其关闭. 没有 ...

  8. Java基础-Java中的并法库之重入读写锁(ReentrantReadWriteLock)

    Java基础-Java中的并法库之重入读写锁(ReentrantReadWriteLock) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在学习Java的之前,你可能已经听说过读 ...

  9. ceilometer主要组件分析

    一.Agent 主要有compute agent 和central agent,还有一些其他的agent这里暂时不分析. agent初始化时会动态加载给定namespace的pollster插件,并通 ...

  10. 【转载】视频CDN技术原理与流程说明

    视频CDN专为移动互联网视频内容分发量身定做的一套自主研发的分布式平台,该平台以深圳为中心,分布在全国各地BGP机房的服务器为边缘节点,汇聚中国电信.中国联通.中国移动.中国教育网等运营商网络资源,构 ...