网站推广.NET

网站推广.NET

HTML如何实现定位position

来源:互联网

本文主要为大家分享一篇HTML如何实现定位position的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧。

一、css定位(posotioning)属性允许你对元素进行定位, position属性值:

     static(默认值):元素框正常生成。块状元素生成一个人矩形框,作为文档流/标准流的一部分,行内元素则会创建一个或者多个行框,置于其父元素中

     relative:元素框偏离某个位置,元素仍保持其未定位前的形状,它原来所占空间仍保留,从这个角度看,好像改元素仍然在文档流/标准流中一样

     absolute:元素从文档流中完全删除,并相对于其包含快定位。包含块可能是文档中的另一个元素或者是初始包含块。元素原先正常文档流中所占的空间会关闭,就像元素不存在一样,元素定位后成一个块级框,而不论原来它是在正常流中是何种类型的框

     fixed:元素的表现和absolute类似,不同的是包含块是视窗本身(body)

立即学习“前端免费学习笔记(深入)”;

二、relative介绍

   使用了该属性值的元素会相对于原来的位置的左上角的坐标使用top和left来进行定位

   代码:

 <style type="text/css">       #main{      width:800px;  height:400px;  margin:0 auto;  border:1px solid blue;   }   .p{     width:110px; height:100px; background:yellow; margin-left:10px; float:left;   }      </style> </head> <body>    <p id="main">    <p class="p">p1</p><p class="p">p2</p><p class="p">p3</p><p class="p">p4</p></p> </body>

效果图:


(1)修改p2的定位值为relative      即:添加position:relative;top:120px;left:50px;


相对于红点位置向右向下分别移动了50像素和120像素,原来位置依然空出来,left和top值也可以是负值,不同的是向相反的方向移动了

改变p2的定位为absolute   即:添加position:absolute;top:120px;left:50px;


可以看出p2是相对于body的左上角移动,并且原来的位置被占了,好像从来没有它的位置一样,这是因为p2会向自己的下面的框找不在标准流中的那一层,一直往下寻找,知道找到位置,如果找不到会以body为准,然后就会向这一层的左上角位置相对移动,下面我们可以为绿色的框框添加定位relative感受一下


会相对于绿色的框框的左上角移动

fixed:给p2添加定位fixed属性值


不管是给p2的父元素添加定位relative还是absolute,p2总户籍相对于body的左上角移动,并且之前的位置已经被占用了。

定位还是比较简单了相对于浮动来说,祝各位能够有所收获

html定位