CSS探索之旅:定位

2024-05-05 19:12

本文主要是介绍CSS探索之旅:定位,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言

欢迎来到我的博客

个人主页:北岭敲键盘的荒漠猫-CSDN博客

本文我们详细介绍

css中定位的相关知识点

定位的用处

先简单认识一下定位是做什么的。

其实,定位的功能就像他的名字一样,可以规定显示在网页的一个位置。

其他布局的效果

我们之前默认标签是从上到下排列,浮动是自己漂浮水平排列。

还有一些属性,水平居中等。

但是我们可以发现,这些布局都是比较的死板,几乎就是一个挨一个,很不灵活。

我们想要一种方式,让他在盒子哪他就在盒子哪。

这个时候就可以用定位。

定位的组成

定位=定位模式+定位偏移量

定位模式:选择我们想要用哪种定位的形式

定位偏移量:规定定位到哪个位置

定位的定义

定位模式

语法:position: 定位模式;

 定位模式:

属性作用

static

静态定位

relative

相对定位

absolute

绝对定位

fixed

固定定位

定位偏移量

top,bottom,left,right

后面跟数值。

这几个数可以这么理解。

假设一个点(这个点在不同模式中位置不同)

top100px是定位位置举例这个点顶部相距100像素(所以实际是下移)

其他的属性依次类推。

静态定位static(无定位)

其实就是不设置定位的意思。设置上他还是标准流。

不多说了。

相对定位relative

描述:这个定位模式是指相对于他原先的位置进行一个偏移。他会在他原先位置的基础上,根据我们设置的偏移量进行偏移到指定的位置上。

特点:

1.没有完全脱离标准流,他原先的位置还会空出来。

2.相对他原本的位置进行移动定位

案例演示:

    <style>#div1 {height: 200px;width: 200px;background-color: antiquewhite;position: relative;top: 80px;left: 70px;}#div2 {height: 200px;width: 200px;background-color: red;}</style>
</head><body><div id="div1"></div><div id="div2"></div>
</body>

绝对定位absolute

描述:他的移动定位是根据他父元素进行移动的。

特点:

1.祖辈标签有定位,就按照祖辈标签偏移;祖辈标签没标签,就按照body(浏览器)进行偏移。

2.祖辈中有不止一个定位,子标签根据最近的那一个定位

3.脱离标准流,不再占有原先的位置。

常用形式:(子绝父相)

因为我们想要在父标签中进行绝对定位,父标签必须也是有定位属性才能成功。但是有时候我们并不想父标签有什么特殊的举动。这时候我们用子标签绝对定位,父标签用相对定位的形式来排版。父标签相对定位并不对空出自己的标准流位置,但是子标签会空出自己的标准位置。

案例演示:

    <style>#div1 {height: 200px;width: 200px;background-color: antiquewhite;position: relative;}#div2 {height: 20px;width: 20px;background-color: red;position: absolute;top: 50px;right: 50px;}#div3 {height: 200px;width: 100px;background-color: orange;}</style>
</head><body><div id="div1"><div id="div2"></div></div><div id="div3"></div>
</body>

父标签div1用相对定位,子标签用的绝对定位,所以他的right是相对于父标签的。后面的盒子也不会占用前面盒子的位置。

固定定位fixed

描述:固定在页面中的指定位置,不管你滑动到哪个位置,这个标签始终在你页面的那个位置。

特点:

1.根据你的浏览器屏幕定位

2.不会占用原先的位置

案例演示:

    <style>#div {height: 200px;width: 200px;background-color: palegoldenrod;position: fixed;top: 50px;right: 50px;}</style>
</head><body><div id="div"></div><div><p>1</p><p>2</p><p>3</p><p>4</p><p>5</p><p>6</p><p>7</p><p>8</p><p>9</p><p>10</p><p>1</p><p>2</p><p>3</p><p>4</p><p>5</p><p>6</p><p>7</p><p>8</p><p>9</p><p>10</p><p>11</p><p>12</p><p>13</p><p>14</p><p>15</p><p>16</p><p>17</p><p>18</p><p>19</p><p>20</p></div>

不管你怎么滑动,标签一直在你屏幕的那个位置

 

发现了没?滑动页面他位置一点没变。很适合小广告呀。

粘性定位

描述:当页面显示这个标签时,他在他自己的位置。当页面下滑没有了这个标签时,他会自己出现在你浏览器页面的指定位置(跟固定标签一样)

特点:

1.会占用原先的位置。

2.在你的屏幕下滑到其他不显示这个标签的位置时,他会变成固定标签的形式。

3.必须要添加偏移量才会产生效果。

案例演示:

<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>#div {height: 20px;background-color: palegoldenrod;position: sticky;top: 2px;}</style>
</head><body><div id="div">我是一个神奇的标签</div><div><p>1</p><p>2</p><p>3</p><p>4</p><p>5</p><p>6</p><p>7</p><p>8</p><p>9</p><p>10</p><p>11</p><p>12</p><p>13</p><p>14</p><p>15</p><p>16</p><p>17</p><p>18</p><p>19</p><p>20</p><p>21</p><p>22</p><p>23</p><p>24</p><p>25</p><p>26</p><p>27</p><p>28</p><p>29</p><p>30</p><p>31</p><p>32</p><p>33</p><p>34</p><p>35</p><p>36</p><p>37</p><p>38</p><p>39</p><p>40</p><p>41</p><p>42</p><p>43</p><p>44</p><p>45</p><p>46</p><p>47</p><p>48</p><p>49</p><p>50</p><p>51</p><p>52</p><p>53</p><p>54</p><p>55</p><p>56</p><p>57</p><p>58</p><p>59</p><p>60</p></div>
</body>

效果如下:

 

下滑后他会一直在。

盒子定位重叠顺序

描述:我们有时候会遇到两个定位标签在同一个位置的情况,但是我们想要让某一个在上面显示的话这个时候就需要用到这个属性。

语法:z-index: 数值;

这个数值可正可负,当定位进行重叠的时候,这个数值大的将会在最顶端显示。

总结

这些就是css中定位的重要知识点。

如果觉得有用的话,可不可以夸赞一下我。

常用夸赞语句:

作者真是个英俊潇洒,帅呆酷毙,风流倜傥,玉树临风,年少多知,聪明伶俐,

活泼可爱,风度翩翩,器宇不凡,全国杰出帅气青年,又难得七岁习武,

上知天文下知地理,下知鸡毛蒜皮。

的大帅币呀!!!

这篇关于CSS探索之旅:定位的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/962456

相关文章

HTML5中的Microdata与历史记录管理详解

《HTML5中的Microdata与历史记录管理详解》Microdata作为HTML5新增的一个特性,它允许开发者在HTML文档中添加更多的语义信息,以便于搜索引擎和浏览器更好地理解页面内容,本文将探... 目录html5中的Mijscrodata与历史记录管理背景简介html5中的Microdata使用M

html5的响应式布局的方法示例详解

《html5的响应式布局的方法示例详解》:本文主要介绍了HTML5中使用媒体查询和Flexbox进行响应式布局的方法,简要介绍了CSSGrid布局的基础知识和如何实现自动换行的网格布局,详细内容请阅读本文,希望能对你有所帮助... 一 使用媒体查询响应式布局        使用的参数@media这是常用的

HTML5表格语法格式详解

《HTML5表格语法格式详解》在HTML语法中,表格主要通过table、tr和td3个标签构成,本文通过实例代码讲解HTML5表格语法格式,感兴趣的朋友一起看看吧... 目录一、表格1.表格语法格式2.表格属性 3.例子二、不规则表格1.跨行2.跨列3.例子一、表格在html语法中,表格主要通过< tab

Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案

《Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案》:本文主要介绍Vue3组件中getCurrentInstance()获取App实例,但是返回nu... 目录vue3组件中getCurrentInstajavascriptnce()获取App实例,但是返回n

JS+HTML实现在线图片水印添加工具

《JS+HTML实现在线图片水印添加工具》在社交媒体和内容创作日益频繁的今天,如何保护原创内容、展示品牌身份成了一个不得不面对的问题,本文将实现一个完全基于HTML+CSS构建的现代化图片水印在线工具... 目录概述功能亮点使用方法技术解析延伸思考运行效果项目源码下载总结概述在社交媒体和内容创作日益频繁的

前端CSS Grid 布局示例详解

《前端CSSGrid布局示例详解》CSSGrid是一种二维布局系统,可以同时控制行和列,相比Flex(一维布局),更适合用在整体页面布局或复杂模块结构中,:本文主要介绍前端CSSGri... 目录css Grid 布局详解(通俗易懂版)一、概述二、基础概念三、创建 Grid 容器四、定义网格行和列五、设置行

前端下载文件时如何后端返回的文件流一些常见方法

《前端下载文件时如何后端返回的文件流一些常见方法》:本文主要介绍前端下载文件时如何后端返回的文件流一些常见方法,包括使用Blob和URL.createObjectURL创建下载链接,以及处理带有C... 目录1. 使用 Blob 和 URL.createObjectURL 创建下载链接例子:使用 Blob

Vuex Actions多参数传递的解决方案

《VuexActions多参数传递的解决方案》在Vuex中,actions的设计默认只支持单个参数传递,这有时会限制我们的使用场景,下面我将详细介绍几种处理多参数传递的解决方案,从基础到高级,... 目录一、对象封装法(推荐)二、参数解构法三、柯里化函数法四、Payload 工厂函数五、TypeScript

Vue3使用router,params传参为空问题

《Vue3使用router,params传参为空问题》:本文主要介绍Vue3使用router,params传参为空问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录vue3使用China编程router,params传参为空1.使用query方式传参2.使用 Histo

CSS Padding 和 Margin 区别全解析

《CSSPadding和Margin区别全解析》CSS中的padding和margin是两个非常基础且重要的属性,它们用于控制元素周围的空白区域,本文将详细介绍padding和... 目录css Padding 和 Margin 全解析1. Padding: 内边距2. Margin: 外边距3. Padd