【网页前端】CSS常用布局之定位(一)

简介: 本期主要介绍CSS常用布局之定位

1. 引言


在网页布局中,经常会涉及到将一个元素固定放置在某些位置的操作:

image.png

或者把某些元素固定在页面某个位置,不会随着网页滚动而滚动。

image.png

以上效果,标准流做不到,浮动也无法轻易做到。

为了轻松实现上述效果,我们就要继续学习 CSS 常用布局的定位知识。

2. 概述及分类


定位:将元素固定在某一位置,又称为摆放元素。

作用:更加方便进行元素的位置调节

根据用法、特性的不同,定位分为多种模式

常见定位模式:

static 静态定位

relative 相对定位

absolute 绝对定位

fixed 固定定位

下面我们来逐一学习

3. 静态定位:(标准流)


3.1 概述


静态定位:属于元素默认定位方式,就是我们常说的标准流。

即无定位。

语法:

选择器{

position: static;

}

注意:除非我们需要将元素 由其他定位模式 强制改回 标准流,否则一般情况下不用。

image.png

4. 相对定位


4.1 概述&入门案例


相对定位: 元素以 自己原先位置 为参照进行定位。

语法:

选择器{

position:relative;

}

准备代码

image.png

image.png

 代码实现:

image.png

效果分析&小结

image.png

小结:

1、 相对定位的元素,仍然会占用原来在 标准流 中的位置

2相对定位可以设置边偏移会在展示效果上 覆盖标准流(也会覆盖浮动)

4.2 边偏移


边偏移:通过上下左右的偏移来移动定位元素。

作用:在定位中摆放元素

准备代码:

image.png

image.png

 常见偏移样式(标准流和浮动无法设置偏移

image.png

image.png

总结:

1、 标准流和浮动无法设置边偏移

2、 相对定位的边偏移,是相对于元素原先在标准流中的位置来定位的。

4.3 进阶案例 1:鼠标移入反馈


我们可以利用边偏移+伪类 制造 鼠标移入反馈。

准备代码: (要求鼠标移入 三个 div,三个 div 不影响整体布局前提下,分别有移动反馈)

(移动反馈:元素向左上移动 5px

image.png

image.png

image.png

小结:

因为相对定位能使用边偏移,用边偏移的展示效果不会影响其他元素,所以可以用来做一些效果。

4.4 注意事项&总结


1 、 标准流 (position:static;) 和 浮动 不能设置边偏移

2 、相对定位的边偏移,是 相对于 元素原先在标准流中的位置 来定位的。

3 、 相对定位的元素,仍然会占用原来在 标准流 中的位置

image.png


相关文章
|
7天前
|
前端开发 JavaScript 程序员
前端深入之css篇丨初探【transform】,手把手带你实现1024程序员节动画
前端深入之css篇丨初探【transform】,手把手带你实现1024程序员节动画
|
2天前
|
移动开发 前端开发 JavaScript
HTML5+CSS3+JavaScript网页实战
HTML5+CSS3+JavaScript网页实战
|
6天前
|
前端开发 编译器
CSS定位(如果想知道CSS有关定位的知识点,那么只看这一篇就足够了!)
CSS定位(如果想知道CSS有关定位的知识点,那么只看这一篇就足够了!)
|
5天前
|
缓存 前端开发 JavaScript
如何优化前端网页加载速度
本文将介绍一些优化前端网页加载速度的技巧和方法,包括减少HTTP请求、压缩文件大小、使用浏览器缓存以及异步加载等。通过这些优化措施,您可以提升用户体验,加快网页加载速度,为用户提供更好的网页访问体验。
|
2天前
|
移动开发 前端开发 HTML5
深掘 CSS3 Flex 布局的奥秘:打造无界限的灵活页面布局
深掘 CSS3 Flex 布局的奥秘:打造无界限的灵活页面布局
|
2天前
|
移动开发 前端开发 HTML5
2024.4.5-CSS 布局模型(层模型)
2024.4.5-CSS 布局模型(层模型)
|
8天前
|
前端开发 容器
如何用css实现两列布局?
如何用css实现两列布局?
12 1
|
21小时前
|
前端开发
程序与技术分享:css常见自适应布局
程序与技术分享:css常见自适应布局
|
23小时前
|
Web App开发 前端开发 JavaScript
技术心得记录:瀑布流的布局原理分析(纯CSS瀑布流与JS瀑布流)
技术心得记录:瀑布流的布局原理分析(纯CSS瀑布流与JS瀑布流)
|
2天前
|
移动开发 前端开发 搜索推荐
CSS3 字体艺术:为你的网页增添一抹色彩!
CSS3 字体艺术:为你的网页增添一抹色彩!