Position属性之relative用法


Posted in Javascript onDecember 14, 2015

Relative是position的一个属性,是相对定位。

position的默认值是static,(也就是说对于任意一个元素,如果没有定义它的position属性,那么它的position:static)

如果你想让这个#demo里的一个div#sub相对于#demo定位在右上角的某个地方,应该给#demo相对定位,#sub绝对定位。

absolute是相对于自己最近的父元素来定位的,如果你不给#demo相对定位,那么#sub的绝对定位就是相对于body来定位的。

relative是相对于自己来定位的,例如:#demo{position:relative;top:-50px;},这时#demo会在相对于它原来的位置上移50px。

另:relative 不脱离文档流,absolute 脱离文档流。也就是说:relative 的元素尽管表面上看到它偏离了原来的位置,但它实际上在文档流中还是没变。absolute的元素不仅位置改变了,同时也脱离了文档流。

position:relative日常应用的时候一般是设置给position:absolute;的父层的,父层position:relative; 子层position:absolute;的话, 就是依照父层的边界进行定位的, 不然position:absolute 会逐层向上寻找设置了position:relative的元素边界, 直到body元素..

写了个例子如下:

Html代码

static: 默认值。无特殊定位,对象遵循HTML定位规则

absolute: 将对象从文档流中拖出,使用left,right,top,bottom 等属性相对于其最接近的一个最有定位设置的父对象进行绝对定位。

如果不存在这样的父对象,则依据body对象。而其层叠通过z-index属性定义

fixed:未支持。对象定位遵从绝对(absolute)方式。但是要遵守一些规范

relative:对象不可层叠,但将依据 left,right,top,bottom 等属性在正常文档流中偏移位置

" quality="high" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="content-type" content="text/html; charset=utf-8"> 
<title>position</title> 
<style type="text/css"> 
  <!-- 
  body{ 
    font-size:12px; 
    margin:0 auto; 
  } 
  div#demo{ 
    position:relative; 
    border:1px solid #000; 
    margin:50px; 
    top:-50px; 
    line-height:18px; 
    overflow:hidden; 
    clear:both; 
    height:1%; 
  } 
  div#sub{ 
    position:absolute; 
    right:10px; 
    top:10px; 
  } 
  div.relative{ 
    position:relative; 
    left:400px; 
    top:-20px; 
  } 
  div.static,div.fixed,div.absolute,div.relative{ 
    width:300px;   
  } 
  div.static{ 
    background-color:#bbb; 
    position:static; 
  } 
  div.fixed{ 
    background-color:#ffc0cb; 
  } 
  div.absolute{ 
    background-color:#b0c4de; 
  } 
  div.relative{ 
    background-color:#ffe4e1; 
  } 
  --> 
</style> 
</head> 
<body> 
  <div id="demo"> 
    <div class="static">static: 默认值。无特殊定位,对象遵循HTML定位规则 </div> 
    <div id="sub" class="absolute">absolute: 将对象从文档流中拖出,使用left,right,top,bottom 等属性相对于其最接近的一个最有定位设置的父对象进行绝对定位。如果不存在这样的父对象,则依据body对象。而其层叠通过z-index属性定义 </div> 
    <div class="fixed">fixed:未支持。对象定位遵从绝对(absolute)方式。但是要遵守一些规范 </div> 
    <div class="relative">relative:对象不可层叠,但将依据 left,right,top,bottom 等属性在正常文档流中偏移位置 </div> 
  </div> 
</body> 
</html>

以上所述是小编给大家分享的position属性之relative用法的全部叙述,希望大家喜欢。

Javascript 相关文章推荐
jquery $.ajax()取xml数据的小问题解决方法
Nov 20 Javascript
JavaScript异步调用定时方法并停止该方法实现代码
Mar 16 Javascript
使用javascript为网页增加夜间模式
Jan 26 Javascript
JavaScript基本的输出和嵌入式写法教程
Oct 20 Javascript
关于JavaScript限制字数的输入框的那些事
Aug 14 Javascript
Ionic2系列之使用DeepLinker实现指定页面URL
Nov 21 Javascript
使用Fullpage插件快速开发整屏翻页的页面
Sep 13 Javascript
jquery获取file表单选择文件的路径、名字、大小、类型
Jan 18 jQuery
js+html5 canvas实现ps钢笔抠图
Apr 28 Javascript
生产制造追溯系统之再说条码打印
Jun 03 Javascript
vue中用 async/await 来处理异步操作
Jul 18 Javascript
uni-app实现获取验证码倒计时功能
Nov 01 Javascript
CSS中position属性之fixed实现div居中
Dec 14 #Javascript
通过设置CSS中的position属性来固定层的位置
Dec 14 #Javascript
js实现拖拽效果(构造函数)
Dec 14 #Javascript
jQuery滚动加载图片实现原理
Dec 14 #Javascript
jQuery点击按钮弹出遮罩层且内容居中特效
Dec 14 #Javascript
jquery实现倒计时效果
Dec 14 #Javascript
JavaScript 七大技巧(一)
Dec 13 #Javascript
You might like
PHP调用Twitter的RSS的实现代码
2010/03/10 PHP
PHP表单提交表单名称含有点号(.)则会被转化为下划线(_)
2011/12/14 PHP
关于php 接口问题(php接口主要也就是运用curl,curl函数)
2013/07/01 PHP
通过chrome浏览器控制台(Console)进行PHP Debug的方法
2016/10/19 PHP
PHP+redis实现的悲观锁机制示例
2018/06/12 PHP
Mootools 1.2教程 类(一)
2009/09/15 Javascript
javascript 带有滚动条的表格,标题固定,带排序功能.
2009/11/13 Javascript
JavaScript和JQuery实用代码片段(一)
2010/04/07 Javascript
jquery 读取页面load get post ajax 四种方式代码写法
2011/04/02 Javascript
创建公共调用 jQuery Ajax 带返回值
2012/08/01 Javascript
javascript重写alert方法的实例代码
2013/03/29 Javascript
js获取多个tagname的节点数组
2013/09/22 Javascript
JavaScript获取鼠标移动时的坐标(兼容IE8、chome谷歌、Firefox)
2014/09/13 Javascript
js判断手机和pc端选择不同执行事件的方法
2015/01/30 Javascript
js正则表达式匹配数字字母下划线等
2015/04/14 Javascript
探析浏览器执行JavaScript脚本加载与代码执行顺序
2016/01/12 Javascript
JavaScript之WebSocket技术详解
2016/11/18 Javascript
Vue Router的懒加载路径的解决方法
2018/06/21 Javascript
微信小程序表单弹窗实例
2018/07/19 Javascript
使用vuepress搭建静态博客的示例代码
2019/02/14 Javascript
[00:09]DOTA2全国高校联赛 精彩活动引爆全场
2018/05/30 DOTA
[01:06] DOTA2英雄背景故事第三期之秩序法则光之守卫
2020/07/07 DOTA
python+pyqt5实现图片批量缩放工具
2019/03/18 Python
详解python校验SQL脚本命名规则
2019/03/22 Python
linux环境中没有网络怎么下载python
2019/07/07 Python
Python文字截图识别OCR工具实例解析
2020/03/05 Python
Python xlrd excel文件操作代码实例
2020/03/10 Python
Mac PyCharm中的.gitignore 安装设置教程
2020/04/16 Python
Linux管理员面试经常问道的相关命令
2013/04/29 面试题
前处理班长职位说明书
2014/03/01 职场文书
电子专业毕业生自荐信
2014/05/25 职场文书
汽车广告策划方案
2014/05/31 职场文书
2014年质检工作总结
2014/11/26 职场文书
公司员工培训管理制度
2015/08/04 职场文书
分享15个Webpack实用的插件!!!
2021/03/31 Javascript
HashMap实现保存两个key相同的数据
2021/06/30 Java/Android