相对定位仅仅的微调我们元素的位置 */ top: 20px; left: 30px; } ...父辈元素设置了相对定位,则子元素绝对定位以父辈元素为参考点。 父相子绝,父绝子绝,父固子绝,都是以父辈元素为参考点。父绝子绝,因为绝对定位脱离标准流,影响页面的布局。父相子绝是常用的布局方案。... 上一层没有再往上找: 绝对定位水平居中 设置绝对定位之后...; margin: 0; } p{ width: 100px; height: 100px; background-color: red; /*固定定位:固定当前的元素不会随着页面滚动而滚动...> 之前: 之后脱标: 定在屏幕上: 参考点 用top描述,以浏览器的左上角为参考点 用bottom描述,以浏览器的左下角为参考点,无论滚动条动还是浏览器底部上下移动
作者:Chidume Nnamdi 译者:前端小智 来源:smashingmagazine 在浏览器中实现用户界面时,请尽可能减少浏览器带来的差异,以使用户界面具有可预测性。...在移动设备上,浏览器会显示一个水平滚动条。 ? 解决方法就是使用 flex-wrap: wrap,这样当水平空间不够时,浏览器会帮我们自动换行。...当视口不够高时将元素固定在屏幕顶部 如果将元素固定在屏幕顶部,如果视口不够高会发生什么情况?很简单:它会占用屏幕空间,因此,用户浏览网站时可用的垂直区域就会变小,这会影响用户的体验。...为 input 元素配置 label 记得加上 for="ID" 在处理表单元素时,可以为label元素分配一个id,这将增加表单的可访问性,当label 元素被点击时,对应的 input 也会获取焦点...水平滚动条 由于元素的宽度,有些元素会导致出现水平滚动条。 找到这个问题的原因最简单的方法就是使用 CSS outline。
在 macOS 下的 Chrome 中,这看起来不错,但是在 Windows 下的 Chrome 中,滚动条始终存在(即使内容很短)。这是因为 scroll-y 会无视内容,一直显示滚动条。...添加 flex-wrap 要想让一个元素表现得像弹性容器那样,只需添加 display: flex。但是,如果没有添加 flex-wrap ,那么当屏幕尺寸缩小的时候,将会出现水平滚动条。...Sara Soueidan 写了一篇不错的文章讨论过这个问题。 8. 当视窗高度不足时将元素固定在屏幕顶部 如果你在视窗不够高的时候将一个元素固定在屏幕顶部,会发生什么事呢?...分配一个标签元素给一个输入框时,添加 for="ID" 使用表单元素时,确保所有的 label 元素都分配到了一个 ID。这将提高它们的可访问性,点击的时候,相关的输入框将获得焦点。...水平滚动条 有些元素的宽度可能会导致出现一个水平滚动条。 要找到问题的根源,最简单的方法就是使用 CSS outline。Addy Osmani 写了一个方便的脚本 。
在本节中,我们将按照以下步骤创建一个可滚动的侧边栏导航:a)创建带有导航项目的导航栏b)将导航栏样式设置为侧边栏c)将侧边栏位置设置为固定d)使用滚动条管理项目的溢出a)....body的高度以使其足够长以滚动以下CSS代码片段描述了如何将初始导航栏样式设置为侧边栏并调整body的底部边距。...在下一节中,我们将学习如何设置水平滚动条。设置自定义水平滚动条。您可以向网页内的容器添加水平滚动条。水平滚动条可以使用户在较短的容器内查看一系列横向内容。...可滚动的容器在上一节中,我们通过将overflow-y属性的值设置为scroll来添加滚动条。您可以猜到这将是什么。你猜对了。属性名叫overflow-x。...为了实现所有滚动条的统一定制,我们可以按如下方式应用样式:在不选择任何特定元素、标签或类名的情况下应用滚动条样式在网站同时具有水平和垂直滚动条的情况下,为两个属性的height和width同时赋值。
以盒子为参考点 一个绝对定位的元素,如果父辈元素中也出现了已定位(无论是绝对定位、相对定位,还是固定定位)的元素,那么将以父辈这个元素,为参考点。 如下:(子绝父相) ? 以下几点需要注意。...(1) 要听最近的已经定位的祖先元素的,不一定是父亲,可能是爷爷: (2)不一定是相对定位,任何定位,都可以作为儿子的参考点: 子绝父绝、子绝父相、子绝父固,都是可以给儿子定位的。...让绝对定位中的盒子在父亲里居中 我们知道,如果想让一个标准流中的盒子在父亲里居中(水平方向看),可以将其设置margin: 0 auto属性。...可如果盒子是绝对定位的,此时已经脱标了,如果还想让其居中(位于父亲的正中间),可以这样做: div { width: 600px; height: 60px;...*/ } **用途2:**顶部导航条 我们经常能看到固定在网页顶端的导航条,可以用固定定位来做。
例如:“background-position:12px 24px;”表示背景图片距离该元素左上角的水平方向位置是12px,垂直方向位置是24px。注意,这两个取值之间要用空格隔开。...分析: 在这个例子中,我们为id="div1"的元素设置了宽度width和高度height,并且设置了一个边框。...background-position属性设置的水平方向距离和垂直方向距离是相对该元素的左上角而言的,大家细细体会一下上面的例子就很容易理解了。...scroll表示背景图像随对象滚动而滚动,是默认选项;fixed表示背景图像固定在页面不动,只有其他的内容随滚动条滚动。 举例: 在浏览器预览效果如下: image.png 分析: 大家在浏览器中拖动右边的滚动条会发现,背景图片在页面固定不动。
一、固定定位概念语法 ---- 固定定位 是 固定在屏幕中的某个位置 , 即使拖动滚动条 , 固定定位的元素仍然保持位置不变 ; 固定定位 完全脱离 标准流 , 不占用 布局中的位置 , 漂浮在任何元素上方...; 固定定位 只相对于 浏览器可视窗口 进行定位 , 定位的方式是通过 " 浏览器可视窗口 + 边偏移 " 进行定位 ; 固定定位 与 父元素没有任何关系 ; 固定定位 与 滚动条滚动没有任何关系 ;...就是 固定定位元素 , 拖动滚动条并不会 改变 固定定位 元素的位置 ; 低版本浏览器不支持固定定位 , 如 : IE6 浏览器 ; 二、固定定位代码示例 ---- 在上一篇博客【CSS】定位...⑥ ( 使用绝对定位在父容器任意位置显示子容器 | 代码示例 ) 代码的基础上 , 将中心的标准流元素设置为 固定定位 元素 ; 为 body 设置高度 1000px , 方便进行滚动条滚动 ;...div> 展示效果 : 默认进入后的样式 : 滚动拖动条后的效果 :
固钉组件是把页面某个元素相对页面 HTML 或者某个 dom 内定位显示,例如固定页面顶部/底部显示,页面宽高改变也会保持原位置。...-- 定位元素 滚动时监听 root 位置和页面可视区的关系设置 fixed,定位的时候设置样式--> 外层定义 d-affix 类,高度和内部的元素相同...* @param {*} el 滚动的容器 * @param {*} isVertical 竖直滚动还是水平滚动 * @returns */ export const getScrollContainer...() 结束某个元素的监听 组件使用 我们在 onMounted 中对 root 元素监听。
引言 在网页布局中,经常会涉及到将一个元素固定放置在某些位置的操作: 或者把某些元素固定在页面某个位置,不会随着网页滚动而滚动。 以上效果,标准流做不到,浮动也无法轻易做到。...为了轻松实现上述效果,我们就要继续学习 CSS 常用布局的定位知识。 2. 概述及分类 定位:将元素固定在某一位置,又称为摆放元素。...准备代码: (要求鼠标移入 三个 div ,三个 div 不影响整体布局前提下,分别有移动反馈) (移动反馈:元素向左上移动 5px ) 实现代码: 小结: 因为相对定位能使用边偏移...、 仅定位元素才可以设置 z-index ,标准流和浮动设置无效 8.2 定位子元素-水平垂直居中 8.2.1 引言&概念 有时我们存在需要让子元素在父元素中 水平居中的需求,若使用标准流或浮动...- 设置: 绝对 定位,子元素在 父 内 水平垂直居中(如果父是 body ,相当于页面水平垂直居 中) 子元素 - 设置: 固定 定位,子元素在 页面 内 水平垂直居中 适用于:快速设置子元素的水平垂直居中效果
三、背景图像概述 在本章第1节“背景样式概述”,我们已经给大家分析了在CSS中控制元素的背景样式包括背景颜色和背景图像,其中控制元素的背景图像涉及到的属性比较多,下面稍微给大家讲解一下,以便为读者理清后面的学习思路...image.png 如上图,使用background-attachment属性设置背景图像固定不动,然后你拖动浏览器滚动条的时候会惊奇发现,图像在固定在浏览器的某个位置,而不随滚动条滚动而变化!...在上面例子中,如果我们没有id="div1"的元素设置高度,则在浏览器预览效果如下: image.png 这样的话,背景图片就无法完整地显示出来了。...大家在上面例子的在线测试中修改div元素width和height这两个的属性值看看效果。...第二个div元素background-repeat属性值为“repeat-x”,因此背景图片会在水平方向(x轴)平铺。
前言 导航条是在您的应用或网站中作为导航页头的响应式基础组件。它们在移动设备上可以折叠(并且可开可关),且在视口(viewport)宽度增加时逐渐变为水平展开模式。..."> 表单 将表单放置于 .navbar-form 之内可以呈现很好的垂直对齐,并在较窄的视口(viewport)中呈现折叠状态...这些类是 .pull-left 和 .pull-right 的 mixin 版本,但是他们被限定在了媒体查询(media query)中,这样可以更容易的在各种尺寸的屏幕上处理导航条组件。... 需要为 body 元素设置内补(padding) 这个固定的导航条会遮住页面上的其它内容,除非你给 元素底部设置了 padding。... 需要为 body 元素设置内补(padding) 这个固定的导航条会遮住页面上的其它内容,除非你给 元素底部设置了 padding。
scroll:超出可滚动。 auto:若超出才出现滚动条。 inherit:继承。...兼容性: ①滚动条外观不同; ②宽度设定机制不同。 ? 因为IE7下width宽度计算为整400px,然而垂直滚动条占用了部分宽度,所以出现了水平滚动条。...想要去掉这个水平滚动条,只需要删除width:100%就可以了。 作用前提: ①非display:inline水平; ②对应方位的尺寸限制。...(2)锚点定位的本质 在页面可滚动容器中,通过锚链滚动到其对应的锚点元素,即改变容器的滚动高度。 前提:①容器可滚动;②锚点元素在容器内。 ...(3)锚点定位的触发 ①url地址中的锚链与锚点元素; ②可focus的锚点元素处于focus状态; (4)锚点定位的作用 ①快速定位 ②选项卡技术 ③单页应用
③、元素宽度在不设置的情况下,是它本身父容器的100%(和父元素的宽度一致),除非设定一个宽度。 如何将一个元素设置为块状元素? ...如何将一个元素设置为块状元素? ...如何将一个元素设置为内联块状元素? ...由于视图本身是固定的,它不会随浏览器窗口的滚动条滚动而变化,除非你在屏幕中移动浏览器窗口的屏幕位置, 或改变浏览器窗口的显示大小,因此固定定位的元素会始终位于浏览器窗口内视图的某个位置,不会受文档流动影响...我们来看个例子就是设置 div 这个块状元素水平居中: html代码: 我是定宽块状元素,哈哈,我要水平居中显示。
可以先看一下MDN中的介绍: IntersectionObserver接口,提供了一种异步观察目标元素与其祖先元素或顶级文档视窗(viewport)交叉状态的方法,祖先元素与视窗(viewport)被称为根...(root); 直接进入正题,IntersectionObserver 翻译为 "交叉观察者",它的任务就是监听目标元素跟指定父元素(用户可指定,默认为viewport)是否在发生交叉行为,简单理解就是监听目标元素是否进入或者离开了指定父元素的内部...为什么要举例以上两种情况呢,因为entries是返回当前已监听并且发生了交叉的目标集合,第一种情况,大家都一起发生交叉,固每次返回的集合长度都为三;第二种情况则是每个目标轮流发生交叉,且当前只触发了一个...传统的懒加载只是监听全局滚动条的滚动,像这种小细节还是无法实现的(传统的实现方法并不是判断目标是否出现在视窗,所以横向的图片会一起加载,即使你没有向左滑动),所以这也是交叉观察者的一大优点✅ 2....但是有个问题,当你滚动的慢的时候,会掉进一个死循环: ? 为了方便观察,我们给参考元素加一个高度跟颜色: ?
: 接下来,我们把这个动画和 @scroll-timeline 相结合,需要把它放置到一个可滚动的容器中: F</div...vertical:竖直方向的滚动 orientation: horizontal:水平方向的滚动 orientation: block:不太常用,使用沿块轴的滚动位置,符合书写模式和方向性 orientation...可选的阈值的 0–1 可用于表示元素滚动中预期可见的百分比。 scroll-offsets 的理解会比较困难,我们稍后详述。...在滚动过程中,我们可以将一个元素,划分为 3 个区域: 滚动过程中,从上方视野盲区,进入视野 滚动过程中,处于视野中 滚动过程中,从视野中,进入下方视野盲区 在这里,我们就可以得到两个边界,上方边界,下方边界...0 和 1 实际表示的是,元素滚动中预期可见的百分比。
CSS 提供了 3 种机制来设置盒子的摆放位置,分别是普通流、浮动和定位,其中: 普通流(标准流) 浮动 让盒子从普通流中浮起来 —— 让多个盒子(div)水平排列成一行。...—— 浏览器可视窗口 + 边偏移属性 来设置元素的位置; 跟父元素没有任何关系;单独使用的 不随滚动条滚动。...哈根达斯分析 一个大的 div 中包含 3 张图片; 大的 div 水平居中; 2 张小图片重叠在广告图片上方 —— 脱标,不占位置,需要使用绝对定位; 2 张小图片分别显示在左上角和右下角 —— 需要使用边偏移确定准确位置...新浪案例分析 顶部图片固定在浏览器可视窗口顶部,不会随窗口一起滚动; 左右两侧的广告图片固定在浏览器可视窗口的左右两侧,不会随窗口一起滚动; 注意:底部的内容图片初始显示在顶部图片的下方,如何解决?...案例小结: 固定定位的应用场景:固定在浏览器可视窗口某个位置的布局; 在使用固定和绝对定位时,如果盒子中没有内容,需要指定宽度(稍后就讲)。
用于把所有用于列表的属性设置于一个声明中 list-style-image 将图象设置为列表项标志。 list-style-position 设置列表中列表项标志的位置。...relative(相对定位),其位置相对其正常时的位置。相对定位元素经常被用来作为绝对定位元素的容器块。 fixed,元素的位置相对于浏览器窗口,是固定位置。即使窗口是滚动的它也不会移动。...sticky(粘性定位),基于用户滚动位置来定位,在未滚动出目标区域时,它的行为就像position:relative;它的表现就像 position:fixed;,它会固定在目标位置。...auto 如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容。 inherit 规定应该从父元素继承 overflow 属性的值。 浮动 clear 指定不允许元素周围有浮动元素。...left right none 布局-水平&垂直对齐 要水平居中对齐一个元素(如 ), 可以使用 margin: auto; 文本在元素内居中对齐,可以使用 text-align: center; 导航栏
那么首先先来说一下常见的三种控制布局的定位方案 布局方案 1.普通流布局 在普通流中,元素按照其在 HTML 中的先后位置至上而下布局,在这个过程中,行内元素水平排列,直到当行被占满然后换行,块级元素则会被渲染为完整的一个新行...可以知道sticky属性有以下几个特点: 该元素并不脱离文档流,仍然保留元素原本在文档流中的位置。 当元素在容器中被滚动超过指定的偏移值时,元素在容器内固定在指定位置。...元素固定的相对偏移是相对于离它最近的具有滚动框的祖先元素,如果祖先元素都不可以滚动,那么是相对于viewport来计算元素的偏移量 这个东西很好的应用就是导航栏吸顶效果,但是比较蛋疼的是这个属性的兼容性还不是很好...它之所以会出现,也是因为监听scroll事件来实现粘性布局使浏览器进入慢滚动的模式,这与浏览器想要通过硬件加速来提升滚动的体验是相悖的。...float浮动布局 在浮动布局中,元素首先按照普通流的位置出现,然后根据浮动的方向尽可能的向左边或右边偏移,其效果与印刷排版中的文本环绕相似。
本文由国内最大的在线教育平台之一"腾讯课堂"赞助。他们现在启动了"腾讯课堂101计划",推广平台上的课程资源,有不少优质内容。希望提高前端技术水平的同学,可以留意一下本文结尾的免费课程信息。...div { position: relative; top: 20px; } 上面代码中,div元素从默认位置向下偏移20px(即距离顶部20px)。...如果父元素是static定位,上例的子元素就是距离网页的顶部向下偏移20px。 注意,absolute定位的元素会被"正常页面流"忽略,即在"正常页面流"中,该元素所占空间为零,周边元素不受影响。...这会导致元素的位置不随页面滚动而变化,好像固定在网页上一样。 ?...div { position: fixed; top: 0; } 上面代码中,div元素始终在视口顶部,不随网页滚动而变化。
领取专属 10元无门槛券
手把手带您无忧上云