position 属性介绍

(1)position 属性自 CSS2 起就有了,该属性规定元素的定位类型。所有主流浏览器都支持 position 属性。

(2)position 的可选值有四个:static、relative、absolute、fixed。下面分别进行介绍。(其实还有个 inherit,不过这个是 IE 特有的,这里就不做讨论)

<h3 id="position: static(默认值)"> position: static(默认值)</h3>

1,基本介绍
(1)static 是默认值。表示没有定位,或者说不算具有定位属性。
(2)如果元素 position 属性值为 static(或者未设 position 属性),该元素出现在正常的流中(忽略 top, bottom, left, right 或者 z-index 声明)。

2,使用样例

css:

<style>
div {
width: 200px;
height: 100px;
background-color: #C9FFFF;
}
</style>

html:

<div></div>
<input type="text"/>

我们不设置元素的 postion 属性值,那么默认的显示效果如下:

<div class="position-static"></div> <input type="text"/>

<h3 id="position: relative(相对定位)"> position: relative(相对定位)</h3>

1,基本介绍

(1)relative 生成相对定位的元素,相对于其正常位置进行定位。
(2)相对定位完成的过程如下:

首先按默认方式(static)生成一个元素(并且元素像层一样浮动了起来)。
然后相对于以前的位置移动,移动的方向和幅度由 left、right、top、bottom 属性确定,偏移前的位置保留不动。

2,样例代码

下面代码将文本输入框 position 设置为 relative(相对定位),并且相对于默认的位置向右、向上分别移动 15 个像素。

css:

  div {
width: 200px;
height: 100px;
background-color: #C9FFFF;
} input {
position: relative;
left: 15px;
top: -15px;
}

html:

<div></div>
<input type="text" />

运行效果如下:

详情见我的博客: https://alex-0407.github.io/b...

1,基本介绍

(1)absolute 生成绝对定位的元素。
(2)绝对定位的元素使用 left、right、top、bottom 属性相对于其最接近的一个具有定位属性的父元素进行绝对定位。
(3)如果不存在这样的父元素,则相对于 body 元素,即相对于浏览器窗口。

2,样例代码

下面代码让标题元素相对于它的父容器做绝对定位(注意父容器 position 要设置为 relative)。
同时通过 top 属性让标题元素上移,使其覆盖在父容器的上边框。
最后通过 left 和 margin-left 配合实现这个绝对定位元素的水平居中。

css:

  #box {
width: 200px;
height: 100px;
-webkit-box-flex:1;
border: 1px solid #28AE65;
border-radius:6px;
padding: 20px;
position: relative;
font-size: 12px;
} #title {
background: #FFFFFF;
color: #28AE65;
font-size: 15px;
text-align: center;
width: 70px;
height: 20px;
line-height: 20px;
position: absolute;
top: -10px;
left: 50%;
margin-left: -35px;
}

html:

<div id="box">
<div id="title">标题</div>
欢迎访问我的博客
</div>

运行效果如下,标题元素虽然是在边框容器的内部。但由于其使用绝对定位,并做位置调整,最后显示效果就是覆盖在父容器边框上。

详情见我的博客: https://alex-0407.github.io/b...

1,基本介绍
(1)fixed 生成绝对定位的元素,该元素相对于浏览器窗口进行定位。
(2)固定定位的元素不会随浏览器窗口的滚动条滚动而变化,也不会受文档流动影响,而是始终位于浏览器窗口内视图的某个位置。

2,样例代码
(1)下面代码让输入框位于浏览器窗口的底部。

css:

  input {
position: fixed;
bottom: 10px;
}

html:

<ol>
<li>数据</li><li>数据</li><li>数据</li><li>数据</li><li>数据</li><li>数据</li>
<li>数据</li><li>数据</li><li>数据</li><li>数据</li><li>数据</li><li>数据</li>
<li>数据</li><li>数据</li><li>数据</li><li>数据</li><li>数据</li><li>数据</li>
<li>数据</li><li>数据</li><li>数据</li><li>数据</li><li>数据</li><li>数据</li>
</ol>
<input type="text" />

(2)可以看到不管滚动条如何滚动,输入框始终处于窗口的最下方。

详情见我的博客: https://alex-0407.github.io/b...


更多angular1/2/4/5、ionic1/2/3/4、react、vue、微信小程序、nodejs等技术文章、视频教程和开源项目,请扫一扫下面的二维码关注微信公众号——全栈弄潮儿


福利专区:扫码关注,免费领取淘宝天猫内部优惠券

本文转载于:猿2048→https://www.mk2048.com/blog/blog.php?id=h0kkh1222kj

CSS - 定位属性position使用详解(static、relative、fixed、absolute)的更多相关文章

  1. CSS中属性position位置详解功能讲解与实例分析

    position有五个值:static.relative.absolute.fixed.inherit. static 是默认值.就是按正常的布局流从上到下从左到右布局,平常我们做网页制作时,没有指定 ...

  2. CSS定位属性Position详解

    CSS中最常用的布局类属性,一个是Float(CSS浮动属性Float详解),另一个就是CSS定位属性Position. 1. position:static 所有元素的默认定位都是:position ...

  3. CSS属性:定位属性(图文详解)

    本文最初发表于博客园,并在GitHub上持续更新前端的系列文章.欢迎在GitHub上关注我,一起入门和进阶前端. 以下是正文. CSS的定位属性有三种,分别是绝对定位.相对定位.固定定位. posit ...

  4. CSS定位属性position相关介绍

    position属性用来定义元素的定位方式. 定位相关属性值 1.static 默认值 2.absolute 绝对定位 3.fixed 固定定位 4.relative 相对定位 5.sticky 粘性 ...

  5. css 定位属性position的使用方法实例-----一个层叠窗口

    运行结果: <!DOCTYPE html> <html> <head> <title>重叠样式窗口</title> <style ty ...

  6. 关于CSS定位属性 position 的使用

    CSS中一般通过浮动和定位来对标签进行位置操作.下面我们来讨论一下定位的用法和需要注意的地方. 1.首先,说一下position的几个属性值 (1)none属性值,这个是定义不进行定位,默认为不定位, ...

  7. CSS学习笔记:定位属性position

    目录 一.定位属性简介 二.各属性值的具体功能 1. relative 2. absolute 3. fixed 三.三种定位属性的效果总结 参考资料:https://www.bilibili.com ...

  8. css 之position用法详解

    css  之position用法详解: http://www.jb51.net/web/77495.html

  9. CSS样式----CSS属性:字体属性和文本属性(图文详解)

    本文最初于2015-10-04发表于博客园,并在GitHub上持续更新前端的系列文章.欢迎在GitHub上关注我,一起入门和进阶前端. 以下是正文. 本文重要内容 CSS的单位 字体属性 文本属性 定 ...

随机推荐

  1. 使用resize浏览器窗口大小改变事件容易出现的问题

    1.使用jQuery的resize时间的时候发现每次改变浏览器窗口大小事resize事件会执行两次, 解决办法 var resizeTimer=null; $(window).resize(funct ...

  2. 通过Xshell或Xftp链接Windows10子系统Linux

    1.打开linux系统 2.切换到root角色 sudo -i //切换到root 并输入密码 3.卸载安装ssh server sudo apt-get remove openssh-server ...

  3. VSCode空格变成虚点

    "editor.renderWhitespace": "all",

  4. 【计算机网络】TCP的三次握手与四次挥手

    今天讲一下TCP的三次握手与四次挥手 1.首先说TCP 协议的特点:TCP是在不可靠的IP层之上实现的可靠的数据传输协议,它主要解决传输的可靠.有序.无丢失和不重复问题.TCP 是TCP/IP 体系中 ...

  5. vue--按需加载的3种方式(解决网页首次加载速度慢的问题)

    一.vue的异步组件加载 使用异步组件加载,打包的时候会将每个组件分开打包到不同的js文件中: {path: '/index', name: 'index', meta:{ title:'首页', r ...

  6. 二级python考试大纲以及考试指导复习方案

    二级python考试大纲与复习指导 本人也是在备考二级py 可能理解不对的地方请指正 参考网络,侵权删除 考纲解读→ 一.考试介绍 1.1考试人群 ​ 全国计算机等级考试(python语言程序设计(二 ...

  7. cmd 连接宝塔终端

  8. tp6微信公众号开发者模式基础消息

    官方文档 https://developers.weixin.qq.com/doc/offiaccount/Message_Management/Receiving_standard_messages ...

  9. laravel 框架 下拉分页

    <!doctype html><html lang="en"><head> <meta charset="UTF-8" ...

  10. tp5 git 常见命令

    git clone git add . # 跟踪所有改动过的文件 git commit -m "commit message" # 提交所有更新过的文件 git checkout ...