【CSS学习第六篇】

CSS学习第六篇

  • [1. 初识定位](#1. 初识定位)
    • [1.1 为什么需要定位](#1.1 为什么需要定位)
    • [1.2 定位的组成](#1.2 定位的组成)
  • [2. 定位的分类](#2. 定位的分类)
    • [2.1 相对定位](#2.1 相对定位)
    • [2.2 绝对定位](#2.2 绝对定位)
      • [2.2.1 绝对定位---没有父级或者父级无定位情况](#2.2.1 绝对定位—没有父级或者父级无定位情况)
      • [2.2.2 绝对定位---父级有定位情况](#2.2.2 绝对定位—父级有定位情况)
      • [2.2.3 绝对定位脱标的不占有原来位置](#2.2.3 绝对定位脱标的不占有原来位置)
      • [2.2.4 子绝父相的由来](#2.2.4 子绝父相的由来)
    • [2.3 固定定位](#2.3 固定定位)
    • [2.4 粘性定位](#2.4 粘性定位)
  • [3. 定位的叠放顺序](#3. 定位的叠放顺序)
  • [4. 定位的拓展](#4. 定位的拓展)
    • [4.1 绝对定位的盒子居中算法](#4.1 绝对定位的盒子居中算法)
    • [4.2 定位的特殊特性](#4.2 定位的特殊特性)
    • [4.3 脱标的盒子不会触发外边距塌陷](#4.3 脱标的盒子不会触发外边距塌陷)
    • [4.4 浮动元素不会压住标准流的文字定位会](#4.4 浮动元素不会压住标准流的文字定位会)
  • [5. 网页布局总结](#5. 网页布局总结)
  • [6. 元素的显示与隐藏](#6. 元素的显示与隐藏)
    • [6.1 display显示隐藏元素](#6.1 display显示隐藏元素)
    • [6.2 visibility显示隐藏元素](#6.2 visibility显示隐藏元素)
    • [6.3 overflow溢出显示隐藏](#6.3 overflow溢出显示隐藏)

1. 初识定位

1.1 为什么需要定位



1.2 定位的组成



2. 定位的分类

2.1 相对定位

(1)静态定位

(2)相对定位

原来的在标准流的位置继续占有,后面的盒子仍然以标准流的方式对待它。(如下文所示)
与父元素/浏览器无关,是以自己原来的位置为基准在移动的,并且原来的盒子还是占有位置的。

下面的盒子不会上去,还是在原来的位置。



2.2 绝对定位

2.2.1 绝对定位---没有父级或者父级无定位情况

(1)绝对定位→没有父级或者父级定位情况

2.2.2 绝对定位---父级有定位情况

(2)绝对定位---父级有定位情况

看最近一级有定位的祖先!(强调有定位

2.2.3 绝对定位脱标的不占有原来位置

绝对定位脱标的不占有原来位置

(绝对定位是不占有位置的)

2.2.4 子绝父相的由来

先来思考两个问题:

问题解答过程:

为什么呢?请看下文。

轮播图的左右按钮用什么定住呢?

浮动?浮动只会影响后面的盒子,如果图片的先插入的,再加入左右按钮这两个盒子,则这两个盒子只会在下面显示。

而且,也不止需要两个盒子,如果是加了浮动,则三个盒子则在一行显示。

此时就可以使用绝对定位,因为绝对定位不占有位置,可以在盒子内自由地摆放位置。

因此,就有以下结论(子绝的由来)

并且,父盒子一定要加定位。

但是,父盒子不能加绝对定位,因为绝对定位是不占有位置的,其他地方的盒子会飘到父盒子里去。

因此,只能使用相对定位了。

总结:

2.3 固定定位

(3)固定定位


固定定位小技巧---固定到版心右侧

固定定位不是基于浏览器的四个角来定位的,它还可以基于版心来定位。

2.4 粘性定位

(4)粘性定位

如下图,一开始跟着滚动条走,走到一定位置就固定了。



粘性定位兼容性特别差,并不常用。

3. 定位的叠放顺序

定位的叠放顺序

4. 定位的拓展

4.1 绝对定位的盒子居中算法

绝对定位的盒子居中算法:

水平 垂直 居中:

4.2 定位的特殊特性

定位特殊特性

(div是abcd,span是123)

4.3 脱标的盒子不会触发外边距塌陷

脱标的盒子不会触发外边距塌陷

4.4 浮动元素不会压住标准流的文字定位会

浮动元素不会压住标准流的文字,定位会






5. 网页布局总结

网页布局总结

6. 元素的显示与隐藏

6.1 display显示隐藏元素

元素的显示与隐藏

(1)display属性




6.2 visibility显示隐藏元素

(2)visibility



6.3 overflow溢出显示隐藏

(3)overflow

→对溢出的部分进行显示和隐藏

例如:

1.hidden

并没有删掉文字:

2.scroll

溢出的部分显示滚动条,可以拖着看


3.auto

(在需要的时候再添加滚动条)

总结:

(如果有定位,请慎用隐藏)

相关推荐
计算机魔术师6 小时前
Dario Amodei 发文呼吁为前沿 AI 降速并提出三点计划
前端
计算机魔术师6 小时前
OpenAI的AI代理偷偷给RubyGems下毒,我们却毫无察觉
前端
甲维斯6 小时前
0代码,0建模,3句话开发一个3D游戏!
前端·游戏·游戏开发
IT_陈寒7 小时前
Vue的响应式更新把我坑惨了,原来问题出在这
前端·人工智能·后端
tingke7 小时前
别再堆 AGENTS.md 了:前端团队的 Agent 上下文分层落地指南
前端
李明卫杭州7 小时前
React 复合事件系统对比解析
前端·javascript·react.js
葡萄城技术团队8 小时前
SpreadJS V19.2 新特性揭秘:FILTERXML 函数
前端
袋鼠云数栈UED团队8 小时前
AI Coding 方法论分析:同一个需求 SpecKit 、 Superpowers、 MattpocockSkills 不同设计
前端·aigc·ai编程
掰头战士8 小时前
Prompt Cache,如果agent全靠LLM方做隐式缓存实在不够用。
前端·llm·agent
LEE9 小时前
前端转型全栈 01:数据建模,前端最大的盲区
前端·javascript·后端