新闻资讯
记录首创点滴进步 见证远行
我们一直紧跟时代前沿,聚焦行业实时动态,发布公司最新资讯,欢迎您的关注
您目前的位置:网站首页 > 新闻资讯 > 网站常识 >

2.07日音讯,css教程之绝对定位的渗入

发布日期:2014-02-07文章来源:首创网络浏览次数:1106次
    2.07日音讯,css教程之绝对定位的渗入。如果说相对定位没有脱离文档流,相对于对象本身进行偏移有点拖泥带水的话,那么绝对定位绝对是快刀斩乱麻,因为绝对定位可以使一个对象脱离正常的文档流,好像是漂浮在正常文......
    本文关键字:2.07日,音讯,css,教程,之,绝对,定位,的,渗入,
  2.07日音讯,css教程之绝对定位的渗入。如果说相对定位没有脱离文档流,相对于对象本身进行偏移有点拖泥带水的话,那么绝对定位绝对是快刀斩乱麻,因为绝对定位可以使一个对象脱离正常的文档流,好像是漂浮在正常文档流的上空,并相对于包含此对象的元素进行定位,当然这个定位相对元素在不同的情况下也有所不同。
  如何将一个元素设置为绝对定位:
  为对象添加如下属性即可将对象设置为绝对定位:
  复制代码代码如下:
  position:absolute;
  或者
  复制代码代码如下:
  position:fixed
  定位参考对象:
  可以使用top属性和left属性设置绝对定位对象的偏移量。
  绝对定位虽然脱离了文档流,但是也需要有定位的参考对象,不过在不同的情况下参考对象也是不同。
  1.如果没有设置top或者left属性值,那么相应方位的定位参考对象就是此对象的一级父元素,代码实例如下:
  复制代码代码如下:
  <!DOCTYPEhtml>
  <html>
  <head>
  <metacharset="utf-8">
  <title>CSS的绝对定位-邯郸网站建设</title>
  <styletype="text/css">
  body
  {
  margin:20px;
  }
  #grandfather
  {
  width:330px;
  height:300px;
  background-color:#F90;
  }
  #father
  {
  width:200px;
  height:200px;
  background-color:green;
  margin-left:50px;
  }
  #children
  {
  width:100px;
  height:100px;
  background-color:red;
  float:right;
  }
  #inner
  {
  width:50px;
  height:50px;
  background-color:blue;
  position:absolute;
  top:10px;
  }
  </style>
  </head>
  <body>
  <divid="grandfather">
  <divid="father">
  <divid="children">
  <divid="inner"></div>
  </div>
  </div>
  </div>
  </body>
  </html>
  以上代码中,由于inner元素采用绝对定位,并且没有设置left属性值,所以在水平方位的定位参考对象就是inner元素的一级父元素children。当然如果没有设置top属性值,那么垂直方位的定位参考对象也是children。
  2.如果设置了left或者top属性值情况:
  1).如果祖先元素中有采用定位的,那么此对象的相应方位的定位参考对象就是此祖先元素,如果祖先元素没有采用定位的,那么相应方位的上的定位参考对象就是浏览器客户区,代码实例如下:
  实例一:
  复制代码代码如下:
  <!DOCTYPEhtml>
  <html>
  <head>
  <metacharset="utf-8">
  <title>CSS的绝对定位</title>
  <styletype="text/css">
  body
  {
  margin:20px;
  }
  #grandfather
  {
  width:330px;
  height:300px;
  background-color:#F90;
  }
  #father
  {
  width:200px;
  height:200px;
  background-color:green;
  margin-left:50px;
  position:relative;
  }
  #children
  {
  width:100px;
  height:100px;
  background-color:red;
  float:right;
  }
  #inner
  {
  width:50px;
  height:50px;
  background-color:blue;
  position:absolute;
  left:10px;
  top:10px;
  }
  </style>
  </head>
  <body>
  <divid="grandfather">
  <divid="father">
  <divid="children">
  <divid="inner"></div>
  </div>
  </div>
  </div>
  </body>
  </html>
  以上代码,inner元素采用绝对定位,并且它的祖先元素father采用相对定位,那么它的定位参考对象就是father。
  实例二:
  复制代码代码如下:
  <!DOCTYPEhtml>
  <html>
  <head>
  <metacharset="utf-8">
  <title>CSS的绝对定位</title>
  <styletype="text/css">
  body
  {
  margin:20px;
  }
  #grandfather
  {
  width:330px;
  height:300px;
  background-color:#F90;
  }
  #father
  {
  width:200px;
  height:200px;
  background-color:green;
  margin-left:50px;
  }
  #children
  {
  width:100px;
  height:100px;
  background-color:red;
  float:right;
  }
  #inner
  {
  width:50px;
  height:50px;
  background-color:blue;
  position:absolute;
  top:10px;
  }
  </style>
  </head>
  <body>
  <divid="grandfather">
  <divid="father">
  <divid="children">
  <divid="inner"></div>
  </div>
  </div>
  </div>
  </body>
  </html>
  以上代码中,inner元素采用绝对定位,并且它的祖先元素没有采用定位的,那么垂直方位的定位参考对象就是窗口,由于没有设置left属性值,那么水平方位的定位参考对象就是它的一级父元素children。
  四.绝对定位元素脱离文档流:
  在开头已经提到过,绝对定位能够使元素脱离文档流,那么它周边文档流中的元素就能够占据此元素没有脱离文档流时的位置。
  代码实例如下:
  复制代码代码如下:
  <!DOCTYPEhtml>
  <html>
  <head>
  <metacharset="utf-8">
  <title>CSS的绝对定位</title>
  <styletype="text/css">
  div
  {
  text-align:center;
  line-height:100px;
  }
  .father
  {
  width:400px;
  height:400px;
  background-color:green;
  margin:50px;
  }
  .first
  {
  width:100px;
  height:100px;
  background-color:red;
  position:absolute;
  }
  .second
  {
  width:120px;
  height:120px;
  background-color:blue;
  }
  </style>
  </head>
  <body>
  <divclass="father">
  <divclass="first">first</div>
  <divclass="second">second</div>
  </div>
  </body>
  </html>
  在以上代码中,由于first元素脱离文档流,所以second元素能够占据原来first元素本来应该占据的位置。
    本文由邯郸网络公司首创网络整理编辑发布,请勿转载、复制、摘抄等!

+ 查看更多我们的客户 / Our client

0310-4559740
400-990-1661
    24小时报务热线
    18931045623
在线客服
首创网络邯郸公司
邯郸公司
电话:0310-4559740 / 18931045623  地址:邯郸市丛台区颐高广场B座13层1304室