我们已经准备好了,你呢?

2024我们与您携手共赢,为您的企业形象保驾护航!

CSS的定位属性有四种,绝对定位,相对定位,静态定位,固定定位。

:| | | 已修复

 position: absolute;  

 position: relative;  

 position: fixed;     

相对定位

相对定位:调整元素相对于原​​始位置的位置(可用于微调盒子的位置)。

我们之前学过的背景属性的格式如下:

 background-position:向右偏移量 向下偏移量;

但这次定位属性的格式如下:

 position: relative;
 left: 50px;
 top: 50px;

相对定位的示例:

html>
<html lang="en">
 <head>
 <style type="text/css">

  body{
   margin0px;
  }

  .div1{
   width200px;
   height200px;
   border1px solid red;
  }

  .div2{
   position: relative;/*相对定位:相对于自己原来的位置*/
   left50px;/*横坐标:正值表示向右偏移,负值表示向左偏移*/
   top50px;/*纵坐标:正值表示向下偏移,负值表示向上偏移*/

   width200px;
   height200px;
   border1px solid red;
  }
 
style>
 head>

 <body>

 <div class="div1">有生之年div>
 <div class="div2">狭路相逢div>

 body>

html>

影响:

属性中的隐藏是什么意思_属性中没有兼容性_html中position的属性

相对定位没有偏离目标

相对定位:不会偏离目标,在家乡留下空当,别人也不会挤走它的位置。

也就是说,相对定位的真正位置还在家乡,但是影子已经出去了,可以飘到各处了。

相对定位的目的

如果我们想将一个 div 放在另一个 div 之上,通常不会使用相对定位。相对定位有两个功能:

相对定位的定位值

PS:负数表示相反方向。

↘:

 position: relative;
 left: 40px;
 top: 10px;

↙:

 position: relative;
 right: 100px;
 top: 100px;

↖:

 position: relative;
 right: 100px;
 bottom: 100px;

↗:

 position: relative;
 left: 200px;
 bottom: 200px;

属性中没有兼容性_属性中的隐藏是什么意思_html中position的属性

如果要描述上图的方向,首先可以这样描述:

 position: relative;
 left: 200px;
 top: 100px;

因为left:200px相当于right:-200px,所以这个图其实有四种写法。

绝对定位

绝对定位:定义横纵坐标,原点为父容器的左上角或者左下角,横坐标用left表示,纵坐标用top或者表示。

格式示例如下:

 position: absolute;  /*绝对定位*/
 left: 10px;  /*横坐标*/
 top/bottom: 20px;  /*纵坐标*/

绝对定位不符合标准

绝对定位的框脱离了标准文档流。

因此,绝对定位后不再遵循标准文档流的所有属性。

绝对定位后,标签不会区分所谓的行内元素和块级元素。不需要 :block 来设置宽度和高度。

绝对定位的参考点(重要)

(1)如果用top来描述,那么参考点是页面的左上角,而不是浏览器的左上角:

html中position的属性_属性中的隐藏是什么意思_属性中没有兼容性

(2)如果使用描述的话,那么参考点就是浏览器的首屏窗口大小(理解“首屏”这个词),也就是对应页面的左下角:

属性中没有兼容性_属性中的隐藏是什么意思_html中position的属性

为了理解“above the fold”一词的含义,我们先来看一下动态图:

属性中的隐藏是什么意思_属性中没有兼容性_html中position的属性

问题:

html中position的属性_属性中没有兼容性_属性中的隐藏是什么意思

回答:

使用定位的时候参考页面左下角对应浏览器首屏的大小。

属性中没有兼容性_html中position的属性_属性中的隐藏是什么意思

使用框作为参考点

对于绝对定位的元素来说,如果其父元素中也有一个定位元素(无论是绝对定位,相对定位,还是固定定位),那么都会以父元素作为参考点。

如下:(儿子和父亲完全不一样)

属性中的隐藏是什么意思_属性中没有兼容性_html中position的属性

需要注意以下几点。

(1)想要监听已经定位的最近祖先元素的人,不一定是父亲,有可能是祖父:

  "box1">        相对定位
   "box2">    没有定位
                绝对定位,将以box1为参考,因为box2没有定位,box1就是最近的父辈元素
   

  


另一个例子:

  "box1">        相对定位
   "box2">    相对定位
                绝对定位,将以box2为参考,因为box2是自己最近的父辈元素
   

  

(2)不一定是相对定位,任何定位都可以作为儿子的参考点:

儿子离不开父亲,儿子离不开父亲的长相,儿子离不开父亲的坚固。这些都可以用来定位儿子。但在工程上,如果消除了孩子和父亲,标准流程中将没有盒子,因此页面会不稳定,没有实际用处。

工程应用:

“儿子必须和父亲一样”是有含义的:这样可以保证父亲不偏离标准,而儿子偏离标准则在父亲的范围内移动。所以工程上经常这么做:

父亲浮动,设置相对定位(零偏移),然后让儿子绝对定位在一定距离之外。

(3)绝对定位子,忽略引用框:

下图中绿色部分为父级div,蓝色部分p为div的内容区域,此时如果div是相对定位,p是绝对定位,那么p会忽略父级,以里面为参考点进行定位:

属性中没有兼容性_属性中的隐藏是什么意思_html中position的属性

将框以绝对定位方式置于父级的中心

我们知道如果想让标准流中的框在父级中居中(水平查看),可以设置它:0 自动属性。

但是如果盒子是绝对定位的,它已经超出标签范围了。如果你仍然想让它居中(就在父亲的中间),你可以这样做:

 div {
  width: 600px;
  height: 60px;
  position: absolute;  绝对定位的盒子
  left: 50%;           首先,让左边线居中
  top: 0;
  margin-left: -300px;  然后,向左移动宽度(600px)的一半
 }

如上代码所示,我们先把盒子做成宽度为600px的框,左线居中,然后将一半的宽度(600px)向左移动,即可实现效果。

属性中没有兼容性_属性中的隐藏是什么意思_html中position的属性

我们可以总结成一个公式:

left:50%; -left:负宽度的一半

固定定位

固定定位:相对于浏览器窗口进行定位,无论页面如何滚动,此框显示的位置保持不变。

注意:不兼容 IE6。

用途一:网页右下角“返回顶部”

比如我们经常看到的网页右下角显示的“返回顶部”就可以被修复。

 <style type="text/css">
  .backtop{
   position: fixed;
   bottom100px;
   right30px;
   width60px;
   height60px;
   background-color: gray;
   text-align: center;
   line-height:30px;
   color:white;
   text-decoration: none;   /*去掉超链接的下划线*/
  }
 
style>

用途 2:顶部导航栏

我们经常会看到导航栏固定在网页的顶部,这个可以通过固定定位来实现。

z-index 属性:

z-index 属性:表示谁按下了谁。较大的值覆盖较小的值。

它具有以下特点:

(1)属性值大的位于上层,属性值小的位于下层。

(2)z-index值没有单位,是一个正整数,默认的z-index值为0。

(3)如果没有一个z-index值,或者z-index值相同,那么如果在HTML代码中把它们写在最后面,谁在最上面谁就占上风。定位元素总是可以压制未定位元素的。

(4)只有定位元素才可以有z-index值。也就是说,不管是相对定位、绝对定位、还是固定定位,都可以使用z-index值。浮动元素不可以使用。

(5)从父现象:如果父亲胆小,儿子再厉​​害也没用。也就是说,如果父亲1比父亲2年长,那么即使儿子1比儿子2小,儿子1也可以在上面。

对于第(1)(2)(3)项,示例如下:

这是默认的示例:(div2在上层,div1在下层)

html中position的属性_属性中的隐藏是什么意思_属性中没有兼容性

现在添加一个z-index属性,需要的效果如下:

属性中的隐藏是什么意思_html中position的属性_属性中没有兼容性

第五条分析:

属性中没有兼容性_属性中的隐藏是什么意思_html中position的属性

z-index 属性还是比较常用的,当多个定位标签被覆盖的时候,我们可以用这个 z-index 属性来判断哪个在最上面,也就是层级应用。

等级:

(1)必须有定位(已移除)

(2)使用z-index控制层级数。

[部分信息来自媒体]

小可爱们,如果这篇内容对你有帮助的话,不妨点个赞支持一下吧!也可以分享给朋友哦

二维码
扫一扫在手机端查看

本文链接:https://by928.com/1418.html     转载请注明出处和本文链接!请遵守 《网站协议》
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。

项目经理在线

相关阅读
猜您喜欢

我们已经准备好了,你呢?

2020我们与您携手共赢,为您的企业形象保驾护航!

在线客服
联系方式

热线电话

13761152229

上班时间

周一到周五

公司电话

二维码
微信
线