举例详解CSS中position属性的使用

伯乐在线   发布时间:2015-09-06 17:39:31   作者:佚名   我要评论
这篇文章主要介绍了举例详解CSS中position属性的使用,是CSS入门学习中的基础知识,需要的朋友可以参考下

position 这个属性决定了元素将如何定位。它的值大概有以下五种:

每个网页都可以看成是由一层一层页面堆叠起来的,如下图所示。

position 设置为 relative 的时候,元素依然在普通流中,位置是正常位置,你可以通过 left right 等移动元素。会影响其他元素的位置。

而当一个元素的 position 值为 absolute 或 fixed 的时候,会发生三件事:

把该元素往 Z 轴方向移了一层,元素脱离了普通流,所以不再占据原来那层的空间,还会覆盖下层的元素。
该元素将变为块级元素,相当于给该元素设置了 display: block;(给一个内联元素,如 <span> ,设置 absolute 之后发现它可以设置宽高了)。
如果该元素是块级元素,元素的宽度由原来的 width: 100%(占据一行),变为了 auto。
由此观之,当 position 设置为 absolute 或 fixed,就没必要设置 display 为 block 了。而且如果你不想覆盖下层的元素,可以设置 z-index 值 达到效果。

下面来看一下插件的参数用法示例:

1. position:static

所有元素的默认定位都是:position:static,这意味着元素没有被定位,而且在文档中出现在它应该在的位置。

一般来说,不用指定 position:static,除非想要覆盖之前设置的定位。

CSS Code复制内容到剪贴板
  1. #div-1 {   
  2.  position:static;   
  3. }  

2. position:relative

如果设定 position:relative,就可以使用 top,bottom,left 和 right 来相对于元素在文档中应该出现的位置来移动这个元素。【意思是元素实际上依然占据文档中的原有位置,只是视觉上相对于它在文档中的原有位置移动了】

CSS Code复制内容到剪贴板
  1. #div-1 {   
  2.  position:relative;   
  3.  top:20px;   
  4.  left:-40px;   
  5. }  

3. position:absolute

当指定 position:absolute 时,元素就脱离了文档【即在文档中已经不占据位置了】,可以准确的按照设置的 top,bottom,left 和 right 来定位了。

CSS Code复制内容到剪贴板
  1. #div-1a {   
  2.  position:absolute;   
  3.  top:0;   
  4.  rightright:0;   
  5.  width:200px;   
  6. }  

4. position:relative + position:absolute

如果我们给 div-1 设置 relative 定位,那么 div-1 内的所有元素都会相对 div-1 定位。如果给 div-1a 设置 absolute 定位,就可以把 div-1a 移动到 div-1 的右上方。

CSS Code复制内容到剪贴板
  1. #div-1 {   
  2.  position:relative;   
  3. }   
  4. #div-1a {   
  5.  position:absolute;   
  6.  top:0;   
  7.  rightright:0;   
  8.  width:200px;   
  9. }  

5. 两栏绝对定位

现在就可以使用相对定位和绝对定位来做一个两栏布局了。

CSS Code复制内容到剪贴板
  1. #div-1 {   
  2.  position:relative;   
  3. }   
  4. #div-1a {   
  5.  position:absolute;   
  6.  top:0;   
  7.  rightright:0;   
  8.  width:200px;   
  9. }   
  10. #div-1b {   
  11.  position:absolute;   
  12.  top:0;   
  13.  left:0;   
  14.  width:200px;   
  15. }  

6. 两栏绝对定位定高

一种方案是给元素设定固定高度。但这种方案对大多数设计来说不太适合,因为一般我们不知道元素中会有多少文本,或者将要使用的精确的字号。

CSS Code复制内容到剪贴板
  1. #div-1 {   
  2.  position:relative;   
  3.  height:250px;   
  4. }   
  5. #div-1a {   
  6.  position:absolute;   
  7.  top:0;   
  8.  rightright:0;   
  9.  width:200px;   
  10. }   
  11. #div-1b {   
  12.  position:absolute;   
  13.  top:0;   
  14.  left:0;   
  15.  width:200px;   
  16. }  

相关文章

  • 深究CSS定位position的常用技法

    这篇文章主要针对CSS定位position的常用技法进行探究,CSS中的position等属性确实有很多需要认真考究的地方,本文就和大家一起探索一下
    2016-04-26
  • 理解CSS浮动float、定位position

    本文针对CSS浮动float、定位position进行学习理解,通过实例帮助大家掌握CSS浮动float、定位position技巧,感兴趣的小伙伴们可以参考一下
    2016-04-21
  • CSS的position属性完全解析

    这篇文章主要介绍了CSS的position属性的完全解析,包括position和overflow在一些相似使用方面的对比,需要的朋友可以参考下
    2015-11-06
  • css中position属性使用详解

    positon有4个属性:static relative absolute fixed,我们都知道absolute是绝对定位,relative是相对定位,但是这个绝对与相对是什么意思呢?绝对是什么地方的绝对,相对又
    2014-11-28
  • 对CSS中的Position、Float属性的一些深入探讨

    对于Position、Float我们在平时使用上可以说是使用频率非常高的两个CSS属性,对于这两个属性的使用上面可能大多数人存在一些模糊与不清晰的地方。本文主要对这两个属性使用
    2014-06-14
  • DIV CSS布局中position属性用法深入探究

    position属性主要有四种属性值,任何元素的默认position的属性值均是static,静态。这节课主要讲讲relative以及absolute,感兴趣的朋友可以了解下
    2013-12-09
  • css中关于定位属性position为fixed的使用记载

    当一个div想要定位时,我们第一反应是position属性,而position属性除了默认值外,还有absolute,relative和fixed,下面有个不错的示例,不懂的朋友可以参考下
    2013-11-11
  • CSS中的position:relative;的作用示例介绍

    CSS中的position:relative是控制元素相对定位的,relative 不脱离文档流而absolute 脱离文档流,relative 的元素尽管表面上看到它偏离了原来的位置,但它实际上在文档流中
    2013-11-05
  • css background-position 用法详细图文介绍

    css background-position背景定位属性想必从事前端开发的朋友并不陌生吧,这个属性很实用的利用它可以实现很多的图片样式效果,下面是其具体的使用方法,感兴趣的朋友不要
    2013-11-04
  • 简明CSS定位属性position

    POSITION属性用来决定元素在页面上的位置,其定位属性有多个,下面一一为大家介绍下,希望大家在使用过程中可以用到
    2013-09-09

最新评论