电脑技术学习

详解CSS的定位语法应用

dn001

一、CSS定位:position

  语法:

  position : static | absolute | fixed | relative

  取值:

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

  absolute; :将对象从文档流中拖出,使用 left , right , top , bottom 等属性相对于其最接近的一个最有定位设置的父对象进行绝对定位。如果不存在这样的父对象,则依据 body 对象。而其层叠通过 z-index 属性定义。

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

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

  说明:检索对象的定位方式。

  设置此属性值为 absolute 会将对象拖离出正常的文档流绝对定位而不考虑它周围内容的布局。假如其他具有不同 z-index 属性的对象已经占据了给定的位置,他们之间不会相互影响,而会在同一位置层叠。此时对象不具有外补丁( margin ),但仍有内补丁( padding )和边框( border )。

要激活对象的绝对(absolute)定位,必须指定 left , right , top , bottom 属性中的至少一个,并且设置此属性值为 absolute 。否则上述属性会使用他们的默认值 auto ,这将导致对象遵从正常的HTML布局规则,在前一个对象之后立即被呈递。

  设置此属性值为 relative 会保持对象在正常的HTML流中,但是它的位置可以根据它的前一个对象进行偏移。在相对(relative)定位对象之后的文本或对象占有他们自己的空间而不会覆盖被定位对象的自然空间。与此不同的,在绝对(absolute)定位对象之后的文本或对象在被定位对象被拖离正常文档流之前会占有它的自然空间。放置绝对(absolute)定位对象在可视区域之外会导致滚动条出现。而放置相对(relative)定位对象在可视区域之外,滚动条不会出现。

  内容的尺寸会根据布局确定对象的尺寸。例如,设置一个 div 对象的 height 和 position 属性,则 div 对象的内容将决定它的宽度( width )。

  此属性对于 currentStyle 对象而言是只读的。对于其他对象而言是可读写的。对应的脚本特性为 position 。

  示例:

  div { position:relative; top:-3px }

  二、CSS定位:Z-index

  语法:

  z-index : auto | number

  取值:

  auto; :默认值。遵从其父对象的定位
  number; :无单位的整数值。可为负数

  说明:

  检索或设置对象的层叠顺序。

  较大 number 值的对象会覆盖在较小 number 值的对象之上。如两个绝对定位对象的此属性具有同样的 number 值,那么将依据它们在HTML文档中声明的顺序层叠。对于未指定此属性的绝对定位对象,此属性的 number 值为正数的对象会在其之上,而 number 值为负数的对象在其之下。设置参数为 null 可以移除此属性。

  此属性仅仅作用于 position 属性值为 relative 或 absolute 的对象。这个属性不会作用于窗口控件,如 select 对象。在IE5.5+中, iframe 对象开始支持此属性。而在之前的浏览器版本中, iframe 对象是窗口控件,会忽略此属性。此属性对于 currentStyle 对象而言是只读的。对于其他对象而言是可读写的。对应的脚本特性为 zIndex 。

  示例:

  div { position:absolute; z-index:3; width:6px; }

  三、CSS定位:top

  语法:

  top : auto | length

  取值:

  auto; :默认值。无特殊定位,根据HTML定位规则在文档流中分配。

  length; :由浮点数字和单位标识符组成的长度值 | 百分数。必须定义 position 属性值为 absolute 或者 relative 此取值方可生效。

  说明:

  检索或设置对象与其最近一个具有定位设置的父对象顶边相关的位置。

  此属性仅仅在对象的定位( position )属性被设置时可用。否则,此属性设置会被忽略。此属性对于 currentStyle 对象而言是只读的。对于其他对象而言是可读写的。对应的脚本特性为 top 。其值为一字符串,所以不可用于脚本(Scripts)中的计算。请使用 style 对象的 posTop , pixelTop 等运行时特性,以及对象的offsetTop 等特性。

  示例:

以下是引用片段:
  div { position: absolute; top: 1in; }
  div { position:relative; top:-3px; left:6px; };


  四、CSS定位:right

  语法:

  right : auto | length

  取值:

  auto; :默认值。无特殊定位,根据HTML定位规则在文档流中分配。

  length; :由浮点数字和单位标识符组成的长度值 | 百分数。必须定义 position 属性值为 absolute 或者 relative 此取值方可生效。

  说明:

  检索或设置对象与其最近一个具有定位设置的父对象右边相关的位置。

  此属性仅仅在对象的定位( position )属性被设置时可用。否则,此属性设置会被忽略。此属性对于 currentStyle 对象而言是只读的。对于其他对象而言是可读写的。对应的脚本特性为 right 。其值为一字符串,所以不可用于脚本(Scripts)中的计算。请使用 style 对象的 posRight , pixelRight 等运行时特性。

  示例:

以下是引用片段:
  div { position: absolute; right: 1in; }
  div { position:relative; top:-3px; right:6px; }


  五、CSS定位:bottom

  语法:

  bottom : auto | length

  取值:

  auto :默认值。无特殊定位,根据HTML定位规则在文档流中分配。

  length :由浮点数字和单位标识符组成的长度值 | 百分数。必须定义 position 属性值为 absolute 或者 relative 此取值方可生效。

  说明:

  检索或设置对象与其最近一个具有定位设置的父对象底边相关的位置。此属性仅仅在对象的定位( position )属性被设置时可用。否则,此属性设置会被忽略。此属性对于 currentStyle 对象而言是只读的。对于其他对象而言是可读写的。对应的脚本特性为 bottom 。其值为一字符串,所以不可用于脚本(Scripts)中的计算。请使用 style 对象的 posBottom , pixelBottom 等运行时特性。

  示例:

以下是引用片段:
  div { position: absolute; bottom: 1in; };
  div { position:relative; bottom:6px; }


  六、CSS定位:left

  语法:

  left : auto | length

  取值:

  auto; :默认值。无特殊定位,根据HTML定位规则在文档流中分配。

  length; :由浮点数字和单位标识符组成的长度值 | 百分数。必须定义 position 属性值为 absolute 或者 relative 此取值方可生效。

  说明:

  检索或设置对象与其最近一个具有定位设置的父对象左边相关的位置。

  此属性仅仅在对象的定位( position )属性被设置时可用。否则,此属性设置会被忽略。此属性对于 currentStyle 对象而言是只读的。对于其他对象而言是可读写的。对应的脚本特性为 left 。其值为一字符串,所以不可用于脚本(Scripts)中的计算。请使用 style 对象的 posLeft , pixelLeft 等运行时特性,以及对象的offsetLeft 等特性。

  示例:

以下是引用片段:
  div { position: absolute; left: 1in; }
  div { position:relative; top:-3px; left:6px; };