当前位置: 首页 > news >正文

CSS笔记(黑马程序员pink老师前端)定位

定位可以让盒子自由的在某个盒子内移动位置或者固定在屏幕中某个位置,并且可以压住其他盒子。

定位 = 定位模式 + 边偏移

定位模式说明
static静态定位,按标准流特性摆放,没有边偏移,很少用
relative相对定位,相对自身原有位置移动,原有位置继续占有(不脱标)
absolute绝对定位 ,相对祖先元素移动位置(脱标)
fixed固定定位, 以浏览器的可视窗口为位置参照 (脱标)
sticky粘性定位,兼容性较差,IE不支持

绝对定位特点:
1.如果没有祖先元素或者祖先元素没有定位,则定位以浏览器为准。
2.如果祖先元素有定位(相对、绝对、固定定位),则以最近一级的有定位祖先元素为参考点移动位置。
3.绝对定位不再占有原先的位置。(脱标)

粘性定位特点:
1.以浏览器的可视窗口为位置参照,占有原先位置,是绝对定位和相对定位的混合。
2.必须添加top,bottom,left,right中的一个才有效。


子绝父相
如果子级使用绝对定位,则父级需要使用相对定位.

定位叠放次序z-index
z-index:1;
z轴高度,数值越大越靠上,可以为正数、零、负数,默认为auto。如果属性值相同,则按照书写的顺序,后来者居上。只有定位的盒子才有这个属性,数值后面不能加单位。


注意
1.加了绝对定位的盒子,不能通过margin:0 auto;来水平居中。
2.脱标的盒子(浮动元素、绝对定位、固定定位)不会触发外边距合并。
3.浮动元素会压住下方标准流的盒子,但不会压住盒子里的文字或图片。绝对定位、固定定位的盒子会压住下方的所有内容。

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>* {margin: 0;padding: 0;}.div1 {margin: 10px auto;height: 3000px;width: 600px;background-color: pink;line-height: 30px;}.father {/* 父相,相对原有位置下降30px,即这里设置的行高大小,原有位置继续占有,下一个p标签显示在这个div的下方 */position: relative;top: 30px;background-color: skyblue;height: 300px;}.son {/* 子绝,不占有原有位置,下方文字向上对齐,子级盒子覆盖部分文字 */position: absolute;top: 0px;left: 200px;background-color: aquamarine;width: 100px;height: 100px;}.div1 p {/* p标签在其原有位置正好被father块完全覆盖,设置20px的上margin,使得文字显示了2/3  */margin-top: 20px;background-color: skyblue;}.div2 {position: fixed;bottom: 20px;right: 20px;height: 100px;width: 100px;background-color: aquamarine;}.div3 {/* 固定在版心旁的盒子 */position: fixed;top: 30px;/*1.走浏览器宽度的一半  */right: 50%;/* 2.利用margin,走版心的一半+空隙 */margin-right: 310px;height: 100px;width: 50px;background-color: aquamarine;}</style>
</head><body><div class="div1">版心盒子<div class="father"><div class="son">绝对定位的子级盒子</div>版心里的相对定位父级盒子<br>..................................................................................................................................</div><p>父级盒子后面的块元素</p></div><div class="div2">相对浏览器可视窗口固定的盒子</div><div class="div3">相对版心固定的盒子</div>
</body></html>

显示效果
在这里插入图片描述

http://www.lryc.cn/news/158497.html

相关文章:

  • C高级Linux指令和shell脚本
  • 449. 序列化和反序列化二叉搜索树
  • DockerCompose部署es和kibana
  • windows系统docker中将vue项目网站部署在nginx上
  • LabVIEW利用纳米结构干电极控制神经肌肉活动
  • 使用PHPStudy在本地快速建立网站并实现局域网外访问(无公网IP)
  • Java工具类--http请求-post
  • HTTP【总结】
  • 统计子岛屿
  • docker介绍、安装及卸载
  • 【EI/SCOPUS会议征稿】第二届环境遥感与地理信息技术国际学术会议(ERSGIT 2023)
  • LabVIEW应用开发——LabVIEW2019保姆级介绍、安装、第一个程序
  • 《TCP/IP网络编程》阅读笔记--Timewait状态和Nagle算法
  • Python常用IDE选择与安装
  • Docker从认识到实践再到底层原理(三)|Docker在Centos7环境下的安装和配置
  • Jmeter系列-Jmeter面板介绍和常用配置(2)
  • 2023高教社杯数学建模D题思路分析 - 圈养湖羊的空间利用率
  • 自动部署工具PM2
  • 软考高级系统架构设计师系列案例考点专题三:数据库系统考点梳理及精讲
  • 【 XXL-JOB】 XXL-JOB任务分片
  • RK3568开发笔记-SATA接口调试
  • 异步编程 - 09 Spring框架中的异步执行_@Async注解异步执行原理源码解析
  • django-项目
  • 红日靶场五(vulnstack5)渗透分析
  • 掌握Gitflow的一些进阶用法
  • 算法随笔:各种经典最短路算法的简要比较总结
  • concrt140.dll怎么下载,concrt140.dll修复工具(修复精灵下载)一键修复问题
  • 自行实现字符串转浮点数函数atof()
  • Windows平台Fortran编程入门
  • 05-Mysql夺命三连问:什么是索引下推?什么是索引覆盖?什么是回表?【Java面试总结】