【CSS】定义元素的位置
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】定义元素的位置的更多相关文章
- css中元素的位置
一.display 1.display:none 隐藏标签 2.display:inline 将块级标签改为内联标签 3.display:block 将内联标签改为块级标签 4.display:inl ...
- CSS定义字体间距 字体行与行间距
CSS定义字体行间距 line-height:xxpx; CSS定义字体间距 下面我们讲述一下CSS的文本属性,还是先来看一下文本属性的详细列表: 属性 属性含义 属性值 Word-s ...
- CSS块元素与内联元素(转)
为什么<a><span>这种标签定义width,height等CSS属性时会发现完全不生效? 因为它们不是容器,它们是内联元素,不是块元素 CSS 块元素与内联元素 关键字: ...
- 【CSS】元素样式
1.使用CSS的三种方式: 方式一.通过元素的style属性来设置元素的样式 方式二.在HTML头部标签<head>中通过<link>标签引入一个外部的CSS资源,通常是一个C ...
- 通过jquery获得某个元素的位置, 透明div, 弹出框, 然后在旁边显示toggle子级联菜单-hover的bug解决
jquery的"筛选选择器", 都是用冒号开头的, 即, 冒号选择器就是 筛选选择器.如: :first, :last, :eq(index), :first-child,...等 ...
- (转)CSS定义字体间距 字体行与行间距
源网址:http://www.cnblogs.com/jian1982/archive/2010/07/03/1770349.html CSS定义字体行间距 line-height:xxpx; CSS ...
- css确定元素水平居中和垂直居中
---恢复内容开始--- 首先,我们在了解如何通过css了解元素水平和垂直居中之前,先要了解下html都有哪些元素,这些元素与偶有哪些分类,因为不同类别的元素的水平垂直居中方法是完全不同的,究其根本当 ...
- HTML。CSS浮动元素详解
浮动定位是指 1.1将元素排除在普通流之外,即元素将脱离标准文档流 1.2元素将不在页面占用空间 1.3将浮动元素放置在包含框的左边或者右边 1.4浮动元素依旧位于包含框之内 2. 浮动的框可以向左或 ...
- CSS伪类与CSS伪元素的区别及由来
关于两者的区别,其实是很古老的问题.但是时至今日,由于各种网络误传以及一些不负责任的书籍误笔,仍然有相当多的人将伪类与伪元素混为一谈,甚至不乏很多CSS老手.早些年刚入行的时候,我自己也被深深误导,因 ...
随机推荐
- HTML基础语法
目录 HTML基础语法 1.全局架构标签 2.标题 3.段落 4.文本 5.属性 6.链接 7.图片 8.列表 9.表格 10.区块 11.布局 12.表单 13.框架 14.头部 HTML基础语法 ...
- Linux常用rmp包网址
* HA:http://download.opensuse.org/repositories/network:/ha-clustering:/Stable/ * Openstack:https://r ...
- Paxos算法浅析
前言在文章2PC/3PC到底是啥中介绍了2PC这种一致性协议,从文中了解到2PC更多的被用在了状态一致性上(分布式事务),在数据一致性中很少被使用:而Paxos正是在数据一致性中被广泛使用,在过去十年 ...
- Dictionary 对象
Dictionary 对象 对象的存储数据键/项对. 语法 Scripting.Dictionary 说明 Dictionary对象相当于 PERL 关联数组. 项目,可以是任何形式的数据,存储在数组 ...
- Python对Selenium调用浏览器进行封装包括启用无头浏览器,及对应的浏览器配置文件
""" 获取浏览器 打开本地浏览器 打开远程浏览器 关闭浏览器 打开网址 最大化 最小化 标题 url 刷新 Python对Selenium封装浏览器调用 ------b ...
- 【原创】CA证书申请+IIS配置HTTPS+默认访问https路径
一.CA证书申请 (一). 新StartSSL注册帐号 1. StartSSL官网 官方网站:https://www.startssl.com/ 2. 进入到StartSSL后,直接点击注 ...
- 关于InfiniBand几个基本知识点解释
文章出处: https://blog.csdn.net/BtB5e6Nsu1g511Eg5XEg/article/details/83629279 公众号 https://blog.csdn.net/ ...
- 用IDEA开发简单的Servlet
最近学习java,主要是servlet相关的内容.IDEA和servlet之前都没有碰过,所以做了一下小实验,走了一些弯路:这里把一个完整的步骤写出来,加深一下印象. IDEA创建项目步骤 1. 在i ...
- KNY三人组对YiSmile小程序的项目总结
设想和目标 1.我们的小程序要解决什么问题? 针对于本校学生,服务于本校学生.由于丢东西,找东西的事情每天都在上演,空间说说,朋友圈,官方QQ,信息比较冗杂,没有一个固定的平台来专门提供学生.此外,教 ...
- Mac 绑定Gitlab或者GitHub帐号,从新生成公钥
1.SSH(Secure Shell)是一种安全协议,在你的电脑与GitLab服务器进行通信时,我们使用SSH密钥(SSH Keys)认证的方式来保证通信安全. 2.创建 SSH密钥,并将密钥中的公钥 ...