`
cs_man
  • 浏览: 58837 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

CSS+DIV定位分析(relative,absolute,static,fixed)

    博客分类:
  • CSS
 
阅读更多

       在用CSS+DIV进行布局的时候,一直对position的四个属性值relative,absolute,static,fixed分的不是很清楚,以致经常会出现让人很郁闷的结果。今天研究了一下,总算有所了解。在此总结一下:

先看下各个属性值的定义:

1、static:默认值。没有定位,元素出现在正常的流中(忽略 top, bottom, left, right 或者 z-index 声明)。

2、relative:生成相对定位的元素,通过top,bottom,left,right的设置相对于其正常位置进行定位。可通过z-index进行层次分级。

3、absolute:生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位。元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。可通过z-index进行层次分级。

4、fixed:生成绝对定位的元素,相对于浏览器窗口进行定位。元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。可通过z-index进行层次分级。

 

static与fixed的定位方式较好理解,在此不做分析。下面对应用的较多的relative和absolute进行分析:

1、relative。定位为relative的元素脱离正常的文本流中,但其在文本流中的位置依然存在。如图1:

图1

黄色背景的层定位为relative,红色边框区域为其在正常流中的位置。在通过top、left对其定位后,从灰色背景层的位置可以看出其正常位置依然存在。

2、absolute。定位为absolute的层脱离正常文本流,但与relative的区别是其在正常流中的位置不在存在。如图2:

图2

可以看到,在将黄色背景层定位为absolute后,灰色背景层自动补上。

3、relative与absolute的主要区别:

首先,是上面已经提到过的在正常流中的位置存在与否。

其次,relative定位的层总是相对于其最近的父元素,无论其父元素是何种定位方式。如图3:

图3

图中,红色背景层为relative定位,其直接父元素绿色背景层为默认的static定位。红色背景层的位置为相对绿色背景层top、left个20元素。而如果红色背景层定位为absolute,则情形如图4:

图4

可以看到,红色背景层依然定义top:20px;left:20px;但其相对的元素变为定位方式为absolute或relative的黄色背景层。因此,对于absolute定位的层总是相对于其最近的定义为absolute或relative的父层,而这个父层并不一定是其直接父层。如果其父层中都未定义absolute或relative,则其将相对body进行定位,如图5:

图5

除top、left、right、bottom定位外,margin属性值的定义也符合上述规则。

本文转自:http://www.pqshow.com/design/htmlcss/12653.html

分享到:
评论

相关推荐

    css+div网页模板整站

    3. 定位(position):包括static、relative、absolute和fixed,通过定位可以实现元素相对于父元素或视口的位置调整。 4. 响应式设计(responsive design):利用媒体查询(media queries)根据设备屏幕尺寸调整样式...

    css+div 经典问题

    4. 定位机制:position属性(static, relative, absolute, fixed)控制元素在页面上的相对或绝对定位,是实现复杂布局的关键。 二、div与CSS布局 1. div作为容器:div元素通常用于组织页面内容,通过设置display...

    CSS+DIV实例

    3. 定位:`position`属性(static、relative、absolute、fixed)控制元素的位置,使得元素可以相对于其正常流、父元素或其他元素定位。 四、CSS选择器 - 类选择器:`.class-name`,根据类名选择元素。 - ID选择器:...

    css+div源代码

    5. **定位(Positioning)**:使用`position`属性(如`static`、`relative`、`absolute`、`fixed`),可以精确控制元素在页面上的位置。 6. **过渡(Transition)和动画(Animation)**:CSS3引入的这两个特性可以...

    CSS+DIV详解网站好帮手

    4. **定位机制**:详细讨论了position属性,包括static、relative、absolute、fixed和sticky等定位方式。 5. **选择器进阶**:探讨了伪类、伪元素、属性选择器等高级选择器的使用,以及如何利用它们实现更精细的...

    CSS+DIV常用方法说明

    2. **定位方式**:CSS提供了四种主要的定位方式:`static`、`relative`、`absolute`和`fixed`。`static`为默认值,`relative`允许元素相对于其正常位置偏移,`absolute`使元素脱离文档流,相对于最近的已定位祖先...

    CSS+DIV定位浅析

    本篇文章将深入探讨CSS中的四种定位方式:static、relative、absolute和fixed,以及它们在实际应用中的差异。 首先,`static`是所有元素的默认定位方式。在这种模式下,元素按照正常的HTML流顺序排列,不考虑任何...

    css+div教程实例

    4. 定位布局(Positioning Layout):通过`position`属性(static, relative, absolute, fixed),可以精确控制元素的位置。 四、CSS+Div实例 这个教程实例涵盖了以下常见布局: 1. 常规两栏布局:左右两部分,通常...

    css+div布局源码模板

    2. 定位布局:利用CSS的position属性(static、relative、absolute、fixed),可以精确控制Div的位置,适合多列布局和复杂页面结构。 3. 浮动布局:使用float属性(left、right),使元素脱离正常文档流,实现左右...

    CSS+DIV布局赏析案例.zip_CSS+DIV布局赏析案例

    4. **定位(positioning)**:CSS的定位属性,如static、relative、absolute和fixed,能精确控制元素在页面上的位置。案例可能利用这些属性实现特定元素的精确定位,如导航栏、侧边栏等。 5. **响应式设计**:随着...

    精通CSS+DIV网页样式与布局(附书源码)

    6. **定位(Positioning)**:CSS提供绝对定位(absolute)、相对定位(relative)、固定定位(fixed)和静态定位(static),以精确控制元素的位置。 7. **CSS层叠与继承**:层叠规则决定了当多个样式规则应用于同...

    css+div 31

    - `position`属性是CSS中控制元素位置的关键,有static(默认)、relative、absolute、fixed等值,可以实现相对定位、绝对定位和固定定位。 - `z-index`属性用于确定多个重叠元素的堆叠顺序,值越大,元素越靠前。...

    css+div建站,很好的css+div学习的ppt

    4. **定位布局**:position属性(static、relative、absolute、fixed)的使用,可以帮助实现更复杂的定位需求,如固定头部、绝对定位元素等。 5. **Flexbox布局**:Flexbox是现代CSS布局模型,适用于单行或单列布局...

    css +div网页模板

    2. **定位**:CSS提供了相对定位(relative)、绝对定位(absolute)和固定定位(fixed)等方法,使元素能在页面上精确放置。比如,`position: relative;`让元素相对于其正常位置定位,`position: absolute;`则让元素相...

    css+div 企业建站模板

    - `定位机制`:包括静态定位(static)、相对定位(relative)、绝对定位(absolute)和固定定位(fixed),用于控制元素的位置。 4. HTML5的新特性: - 新增的语义化标签,如`<header>`, `<nav>`, `<section>`, ...

    CSS+div模板精华案例分析

    3. 定位:position属性(如static、relative、absolute、fixed)提供了更灵活的元素定位方式。 二、div元素的应用 div(division)元素是HTML中最常用的容器元素,通常结合CSS进行布局。它可以包裹其他元素,实现...

    css+div实例

    2. 定位:使用`position`属性(如`static`、`relative`、`absolute`和`fixed`),可以实现元素的相对、绝对和固定定位。 3. 层叠与显示顺序:`z-index`属性控制元素的堆叠顺序,决定哪个元素覆盖另一个元素。 4. ...

    css+div视频实例

    3. **定位机制**:学习如何使用`position`属性(static、relative、absolute、fixed)进行元素定位,以及`z-index`在层叠上下文中的作用。 4. **浮动(float)**:浮动是早期布局常用的方法,用于创建多列布局。理解...

    css+div+网页制作全面参考手册

    2. 布局技术,包括盒模型、浮动、定位(static、relative、absolute、fixed)。 3. 文本和字体样式,如字体大小、颜色、行高、对齐方式。 4. 背景和边框,如背景图像、渐变、圆角、阴影。 5. 盒阴影、文字阴影和内/...

    css+div模板

    3. **定位布局**:使用`position`属性(如`static`、`relative`、`absolute`、`fixed`),可以精确控制元素的位置。 4. **Flex布局**:Flex布局(弹性盒模型)是现代浏览器支持的一种布局模式,可以方便地创建弹性、...

Global site tag (gtag.js) - Google Analytics