前端基础--定位基础

1.1为什么需要定位?

1.需要实现某个元素可以自由的在一个盒子内移动位置,并且压住其他盒子

2.当我们滚动窗口的时候,盒子是固定屏幕某个位置的。

1.2定位组成

定位:将盒子定在某个位置,所以定位也是在摆放盒子,按照定位的方式移动盒子

定位=定位模式+边偏移

定位模式用于指定一个元素在文档中的定位方式。边偏移则决定了该元素的最终位置

1.定位模式

定位模式决定元素的定位方式,它通过CSS的position属性来设置

语义
static静态定位
relative相对定位
absolute绝对定位
fixed固定定位
stick粘性定位

2.边偏移

边偏移就是定位的盒子移动到最终位置。有top bottom left right 4个属性

边偏移属性描述
top顶端偏移量,定义元素相对于其父元素上边线的距离
bottom底部偏移量,定义元素相对于其父元素下边线的距离
left左侧偏移量,定义元素相对于其父元素左边线的距离
right右侧偏移量,定义元素相对于其父元素右边线的距离

1.3静态定位staic(了解)

静态定位是元素的默认定位方式,无定位的意思

语法:     选择器 {position:static}

静态定位按照标准流摆放位置,它没有边偏移

静态定位在布局时很少用到

基本等于标准流

1.4相对定位relative(重要)

相对定位是元素在移动位置的时候,是相对于它原来的位置来说的(自恋)

语法:     选择器 {position: relative}

相对定位的特点:

1.它是相对于自己原来的位置来移动的(移动位置的时候参照点是自己原来的位置)

2.原来在标准流的位置继续占有,后面的盒子依然以标准流的方式对待

(不脱标,继续保留原来的位置)

它最典型的应用是给绝对定位当爹的

1.5 绝对定位absolute (重要)

绝对定位是元素在移动元素的时候,是相对于它祖先元素来说的(拼爹)

选择器 {position:absolute}

绝对定位的特点:

1.如果没有祖先元素或者祖先元素没有定位,则以浏览器为准定位(Document文档)

2.如果祖先元素有定位(相对 绝对 固定定位),则以最近一级的有定位的有定位祖先元素为参考点移动位置

(最近一级有定位的父元素为准进行移动)

3.绝对定位不在占有先前的位置(脱标)

1.6子绝父相的由来

子绝父相:子元素使用绝对定位,父元素就得使用相对定位

这样子元素可以在盒子里随意移动,并且不占用影响其他兄弟盒子

1.7固定定位fixed(重要)

选择器 {position:fixed}

固定定位的特点:

1.以浏览器的可视窗口为参照点移动元素

--跟父元素没有任何关系

--不随滚动条滚动

2.固定定位不在占有原先的位置

(也是脱标的),也可以看作是一种特殊的绝对定位

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

1.先向左移动50%(定位移动)

2.再向左移动版心宽度的一半就可以(可以使用外边距移动)

示例版心为1200px

.daji {
            position: fixed;
            left: 50%;
            margin-left: 600px;
            background-color: skyblue;
            top: 500px;
        }

1.9粘性定位

粘性定位可以被认为是相对定位和固定定位的混合。sticky粘性

选择器 {position:sticky}

粘性定位的特点:

1.以浏览器的可视窗口为参照点移动元素(固定定位的特点)

2.粘性定位占有原先的位置(相对定位特点)

3.必须添加上下左右其中一个才有效

(例如:top=0 即为当元素离浏览器上沿为零像素时开始变为固定,不随之滚动

1.10定位的叠放次序 z-index

在使用定位布局时,可能会出现盒子重叠的情况。此时,可以使用z-index属性来控制盒子的前后次序(类似于z轴)

1.数值可以是正整数,负整数或0,默认是auto,数值越大,盒子越靠上

2.如果属性值相同,则按照书写顺序,后来居上

3.数字后面不能加单位

4.只有定位的盒子才有这个属性

1.11定位的拓展

1.绝对定位的盒子居中

因为加了绝对定位的盒子不能通过margin:0,auto 水平居中,但是可以通过一下计算方法实现水平和垂直居中

分为两步:

1.先使用定位走父容器宽度的一半(50%)

2.再使用margin-left 负值移动盒子宽度的一半

(第一步走过了,往回移动一点)

2。定位的特殊特性

绝对定位和固定定位也和浮动类似:

1.行内元素添加绝对或者固定定位,可以直接设置高度和宽度

2.块级元素添加绝对或者固定定位,如果不给宽度和高度,默认大小是内容的大小

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

浮动元素,绝对定位(固定定位)元素的都不会触发外边距塌陷问题

4.绝对定位(固定定位)会完全压住盒子

和浮动元素不同,浮动元素只会压住它下面标准流的盒子,但是不会压住下面的标准流盒子里面的文字和(图片)

但是绝对或者固定定位会压住下面标准流所有的内容

因为浮动最初是用来制作文字环绕效果的

  • 18
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
前端基础面试题2021 pdf》是一份前端开发面试题目集合的PDF文件。这份题目集合包含了2021年前端开发领域的基础知识和技能要求。 这份PDF文件主要包括了以下内容:HTMLCSS、JavaScript基础知识、网络与安全、框架与工具、性能优化与调试、前端工程化等方面的题目。 在HTML方面,题目涉及HTML标签、常见元素的使用、语义化等内容。在CSS方面,题目包括选择器、盒模型、浮动、定位、布局等知识。在JavaScript方面,题目涉及变量、数据类型、运算符、函数、作用域、闭包、面向对象等内容。 此外,网络与安全的题目涵盖了HTTP协议、HTTPS、跨域、攻击与防御等知识。框架与工具方面,题目包括对常见框架如React、Vue的理解、webpack等工具的使用。性能优化与调试的题目涉及浏览器渲染原理、代码优化、性能测试等。而前端工程化方面的题目则包括项目构建、版本控制、代码规范等方面。 通过研究这份面试题目集合,考生可以了解2021年前端开发领域的基本要求和技能点,提前进行准备和复习。同时,这份题目集合也可以帮助面试官评估候选人的技术水平和能力,从而做出合理的招聘决策。 总的来说,《前端基础面试题2021 pdf》是一份在前端开发领域进行面试准备和评估的有用资源。如果你是一位前端开发者,阅读并解答其中的题目,有助于加深对前端知识和技能的理解和掌握。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值