美文网首页
CSS定位学习笔记(转)

CSS定位学习笔记(转)

作者: Goobai | 来源:发表于2018-12-06 12:31 被阅读0次

1.层模型--绝对定位(absolute)

如果想为元素设置层模型中的绝对定位,需要设置position:absolute(表示绝对定位),这条语句的作用将元素从文档流中拖出来,然后使用left、right、top、bottom属性相对于其最接近的一个具有定位属性的父包含块进行绝对定位。如果不存在这样的包含块,则相对于body元素,即相对于浏览器窗口。

1.如下面代码可以实现div元素相对于浏览器窗口向右移动100px,向下移动50px。

div{
    width:200px;
    height:200px;
    border:2px red solid;
    position:absolute;
    left:100px;
    top:50px;
}
<div id="div1"></div>

效果如图:

绝对定位

2.层模型--相对定位(relative)

如果想为元素设置层模型中的相对定位,需要设置position:relative(表示相对定位),它通过left、right、top、bottom属性确定元素在正常文档流中的偏移位置。相对定位完成的过程是首先按static(float)方式生成一个元素(并且元素像层一样浮动了起来),然后相对于以前的位置移动,移动的方向和幅度由left、right、top、bottom属性确定,偏移前的位置保留不动。

如下代码实现相对于以前位置向下移动50px,向右移动100px;

#div1{
    width:200px;
    height:200px;
    border:2px red solid;
    position:relative;
    left:100px;
    top:50px;
}

<div id="div1"></div>

效果如图:


相对定位

3.层模型--固定定位(fixed)

fixed:表示固定定位,与absolute定位类型类似,但它的相对移动的坐标是视图(屏幕内的网页窗口)本身。由于视图本身是固定的,它不会随浏览器窗口的滚动条滚动而变化,除非你在屏幕中移动浏览器窗口的屏幕位置,或改变浏览器窗口的显示大小,因此固定定位的元素会始终位于浏览器窗口内视图的某个位置,不会受文档流动影响,这与background-attachment:fixed;属性功能相同。以下代码可以实现相对于浏览器视图向右移动100px,向下移动50px。并且拖动滚动条时位置固定不变。

#div1{
    width:200px;
    height:200px;
    border:2px red solid;
    position:fixed;
    left:100px;
    top:50px;
}
<p>文本文本文本文本文本文本文本文本文本文本文本文本文本文本。</p>

4.Relative与Absolute组合使用

小伙伴们学习了12-6小节的绝对定位的方法:使用position:absolute可以实现被设置元素相对于浏览器(body)设置定位以后,大家有没有想过可不可以相对于其它元素进行定位呢?答案是肯定的,当然可以。使用position:relative来帮忙,但是必须遵守下面规范:

1、参照定位的元素必须是相对定位元素的前辈元素:

<div id="box1"><!--参照定位的元素-->
    <div id="box2">相对参照元素进行定位</div><!--相对定位元素-->
</div>

从上面代码可以看出box1是box2的父元素(父元素当然也是前辈元素了)。

2、参照定位的元素必须加入position:relative;

#box1{
    width:200px;
    height:200px;
    position:relative;        
}

3、定位元素加入position:absolute,便可以使用top、bottom、left、right来进行偏移定位了。

#box2{
    position:absolute;
    top:20px;
    left:30px;         
}

这样box2就可以相对于父元素box1定位了(这里注意参照物就可以不是浏览器了,而可以自由设置了)。

原文链接:https://www.imooc.com/code/2073

相关文章

  • CSS定位学习笔记(转)

    1.层模型--绝对定位(absolute) 如果想为元素设置层模型中的绝对定位,需要设置position:abso...

  • CSS学习笔记——CSS定位

    position基本属性 定位机制 普通流。默认定位方式,在普通流中元素框的位置由元素在html中的位置决定。其中...

  • Html 梳理

    Html 学习笔记 基本标签, 重点标签: , 几个mate标签的意思 字符集 html,css,js 的定位 ...

  • CSS学习笔记之定位

    CSS的盒子及相关 盒子基础 postion,float,display——版式 边框(border)。可以设置...

  • css学习笔记:定位position

    css position定位 position选值类型: static:默认状态,不开启定位 relative:相...

  • selenium中常用的css定位方法

    为学习css在selenium中的定位的,本来写了个html用来学习练习css 定位 1.html代码如下,大家可...

  • CSS定位笔记

    1、定位参照与谁块来决定 2、什么是初始包含块 3、初始值和可继承性 3.1、属性:left、top、right、...

  • CSS定位笔记

    一、定位 1.相对定位 position:relative,相对于原来的位置偏移。偏移后不影响原有的布局. 2.绝...

  • 笔记 - CSS定位

    div分层 从上到下:文字内容(内联子元素) - 浮动元素,块级子元素 - border - background...

  • CSS:盒子模型(box)

    盒子模型(CSS 重点) css 学习三大重点: css 盒子模型 、 浮动 、 定位 主题思路: 目标...

网友评论

      本文标题:CSS定位学习笔记(转)

      本文链接:https://www.haomeiwen.com/subject/zlymcqtx.html