CSS定义元素的位置
html元素的position属性,有4个属性值,分别是static、relative、fixed、absolute

static:
1、默认值,一般不显式设置为static
2、即使设置top、bottom、left、right,元素的位置不会发生改变
3、会随着页面滚动条移动
4、代码示例:

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>position static</title>
<style>
.static{
border: 2px solid red;
/*position: static; 不管有没有这行代码,浏览器中看到的效果都一样,因为默认情况下,元素的position值就是static*/
width: 100px;
height: 100px;
}
.wh{
width: 100%;
height: 800px;
background-color: grey;
}
</style>
</head>
<body>
<h1>position static</h1>
<div class="static">
div元素的position:static
</div>
<div class="wh"></div>
</body>
</html>

relative:
1、元素相对于它原来的位置进行移动,移动的参考物就是浏览器默认给元素渲染出的那个位置
2、需要设置top、bottom、left、right,元素的位置才会移动
3、不设置top、bottom、left、right,则元素的位置不会移动。
4、left的值可正可负,为正,则元素位置往右边移动,为负,则往左边移动。right、top、bottom也一样,可正可负
5、元素移动后,原来的位置还存在文档流中,不会被其他元素填充上去。
6、会随着页面滚动条移动
7、代码示例:

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>position relative</title>
<style>
.relative{
border: 2px solid red;
width: 300px;
height: 200px;
/*如果只设置position属性,而不设置top、bottom、left、right,则元素位置不会发生改变*/
position: relative;
top:15px;
left:100px;
} .wh{
width: 100%;
height: 800px;
background-color: grey;
}
p{
border: solid 1px blue;
}
</style>
</head>
<body>
<h1>relative</h1>
<div class="relative">
div element position:relative
</div>
<p>div位置移动后,p元素不会填充div元素移动前的那个位置</p> <div class="wh"></div>
</body>
</html>

fixed:
1、需要设置top、bottom、left、right,才会相对于它原来的位置进行移动,这点跟relative一样。
2、不设置top、bottom、left、right,则元素的位置不会移动。
3、元素在相对自己原来的位置移动后,页面滚动条滚动时,元素相对浏览器视图窗口的位置保持不变,即元素不会随着页面滚动条移动。
4、代码示例:

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>position fixed</title>
<style>
.fixed{
border: 2px solid blue;
width: 200px;
height: 100px;
/*如果只设置postion,而不设置top、bottom、left、right,则元素的位置不会发生改变*/
position: fixed;
top:200px;
left: 200px;
} .wh{
width: 100%;
height: 800px;
background-color: grey;
}
</style>
</head>
<body>
<h1>fixed</h1>
<div class="fixed">
div element position:fixed
</div>
<div class="wh"></div>
</body>
</html>

absolute:
1、移动参考物,是它的上级指定了位置的一个元素,它的上级元素可以是父级,也可以是父级的父级。
2、它的上级元素必须指定了position属性的值为relative、fixed、absolute之一(static排除在外)
3、需要设置top、bottom、left、right,元素的位置才会移动
4、一般会搭配一个position属性为relative的父级元素使用
5、代码示例:

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>position absolute</title>
<style>
.parent {
border: 2px solid red;
width: 400px;
height: 300px;
padding: 10px;
position: relative;
} .absolute{
border: 2px solid blue;
width: 200px;
height: 50px;
position: absolute;
top: 50px;
left: 100px;
}
</style>
</head>
<body>
<div class="parent">
parent element position:relative
<div class="absolute">
div element position:absolute
</div>
</div>
</body>
</html>

【CSS】定义元素的位置的更多相关文章

  1. css中元素的位置

    一.display 1.display:none 隐藏标签 2.display:inline 将块级标签改为内联标签 3.display:block 将内联标签改为块级标签 4.display:inl ...

  2. CSS定义字体间距 字体行与行间距

    CSS定义字体行间距 line-height:xxpx; CSS定义字体间距 下面我们讲述一下CSS的文本属性,还是先来看一下文本属性的详细列表: 属性     属性含义     属性值 Word-s ...

  3. CSS块元素与内联元素(转)

    为什么<a><span>这种标签定义width,height等CSS属性时会发现完全不生效? 因为它们不是容器,它们是内联元素,不是块元素 CSS 块元素与内联元素 关键字: ...

  4. 【CSS】元素样式

    1.使用CSS的三种方式: 方式一.通过元素的style属性来设置元素的样式 方式二.在HTML头部标签<head>中通过<link>标签引入一个外部的CSS资源,通常是一个C ...

  5. 通过jquery获得某个元素的位置, 透明div, 弹出框, 然后在旁边显示toggle子级联菜单-hover的bug解决

    jquery的"筛选选择器", 都是用冒号开头的, 即, 冒号选择器就是 筛选选择器.如: :first, :last, :eq(index), :first-child,...等 ...

  6. (转)CSS定义字体间距 字体行与行间距

    源网址:http://www.cnblogs.com/jian1982/archive/2010/07/03/1770349.html CSS定义字体行间距 line-height:xxpx; CSS ...

  7. css确定元素水平居中和垂直居中

    ---恢复内容开始--- 首先,我们在了解如何通过css了解元素水平和垂直居中之前,先要了解下html都有哪些元素,这些元素与偶有哪些分类,因为不同类别的元素的水平垂直居中方法是完全不同的,究其根本当 ...

  8. HTML。CSS浮动元素详解

    浮动定位是指 1.1将元素排除在普通流之外,即元素将脱离标准文档流 1.2元素将不在页面占用空间 1.3将浮动元素放置在包含框的左边或者右边 1.4浮动元素依旧位于包含框之内 2. 浮动的框可以向左或 ...

  9. CSS伪类与CSS伪元素的区别及由来

    关于两者的区别,其实是很古老的问题.但是时至今日,由于各种网络误传以及一些不负责任的书籍误笔,仍然有相当多的人将伪类与伪元素混为一谈,甚至不乏很多CSS老手.早些年刚入行的时候,我自己也被深深误导,因 ...

随机推荐

  1. Neo4j 第四篇:使用C#更新和查询Neo4j

    本文使用的IDE是Visual Studio 2015 ,驱动程序是Neo4j官方的最新版本:Neo4j Driver 1.3.0 ,创建的类库工程(Project)要求安装 .NET Framewo ...

  2. Panorama——H5实现全景图片原理

    前言 H5是怎么实现全景图片播放呢? 正文 全景图的基本原理即 "等距圆柱投影",这是一种将球体上的各个点投影到圆柱体的侧面上的一种投影方式,投影后再展开就是一张 2:1 的矩形图 ...

  3. 前端示例MVC网站

    前端示例MVC网站 ASP.NET Zero 包含了一个公共web站点的前端页面和一个登陆页面.当您第一次运行项目的时候可以看到,如下图所示: 该前端网站有两个页面,一个是主页和关于我们.这些页面的内 ...

  4. Android中级教程之----Log图文详解(Log.v,Log.d,Log.i,Log.w,Log.e)

    在Android群里,经常会有人问我,Android Log是怎么用的,今天我就把从网上以及SDK里东拼西凑过来,让大家先一睹为快,希望对大家入门Android Log有一定的帮助. android. ...

  5. 现代OpenGL渲染管线介绍

    原文摘选自 现代OpenGL渲染管线介绍 此文对最新的OpenGL做一个简单的介绍,如有理解错误,敬请指正.英文原文: https://glumpy.github.io/modern-gl.html ...

  6. idou老师教你学Istio 17 : 通过HTTPS进行双向TLS传输

    众所周知,HTTPS是用来解决 HTTP 明文协议的缺陷,在 HTTP 的基础上加入 SSL/TLS 协议,依靠 SSL 证书来验证服务器的身份,为客户端和服务器端之间建立“SSL”通道,确保数据运输 ...

  7. Fabric Dev开发调试模式的搭建过程

    在利用Fabric开发Chaincode的时候,调试Chaincode显得尤为不方便,因为Chaincode正常应该运行在Docker容器中,每次修改Chaincode后想要使其更改生效必须得对Cha ...

  8. Vigenere加密

    Vigenere加密法原理很简单,实现起来也不难.与普通的单码加密法不同,明文经过加密之后,每个字母出现的频率就不会有高峰和低峰. 密钥中字母代表行和明文中的字母代表行.在vigenere表中找到对应 ...

  9. JavaScript高级程序设计学习笔记2

    垃圾收集原理: 找出不再使用的变量,然后释放其内存. js中最常用的垃圾收集方法是标记清除,当变量进入环境时,就将变量标记为“进入环境”,当变量离开环境时,将其标记为“离开环境”,最后由垃圾收集器完成 ...

  10. Linux内核分析 计算机是如何工作的——by王玥

    1.冯诺依曼体系结构:也就是指存储程序计算机 硬件(存储程序计算机工作模式): 软件(程序员角度): 2.API:程序员与计算机的接口界面 ABI:程序与CPU的接口界面 3.X86的实现: 4.X8 ...