The stacking context】的更多相关文章

以下内容根据CSS规范翻译. z-index 'z-index'Value: auto | <integer> | inheritInitial: autoApplies to: positioned elementsInherited: noPercentages: N/AMedia: visualComputed value: as specified 注意:z-index属性只能应用于position属性不为static的元素,即定位元素. 对于定位元素来说,z-index属性指定: 在…
HTML中决定元素叠加顺序的CSS属性最有名的应该是z-index了.但是,往往在项目中发现有些情况和我们的预期不太一致.经过研究和学习,总算搞清楚了其中的关系.简单总结如下: 只有Positioned(Position不为static的元素)元素的z-index属性才有效 z-index可以是负数 没有z-index或z-index无效的元素(参见第一条)相当于z-index为0: 符合某些条件(注1)的元素,浏览器会为它们创建一个叫stacking context的东东.根据DOM树结构,s…
MDNThe stacking context 层叠上下文是HTML元素的三维概念,这些HTML元素在一条假想的相对于面向(电脑屏幕的)视窗或者网页的用户的z轴上延伸,HTML元素依据其自身属性按照优先级顺序占用层叠上下文的空间. 在之前的增加 z-index 的例子中, 某些 DIV 的渲染顺序是由 z-index 的值影响的.这是因为这些 DIV 具有 使他们形成一个层叠上下文  的特殊属性. 文档中的层叠上下文由满足以下任意一个条件的元素形成: 根元素 (HTML), z-index 值不…
层叠上下文 Stacking Context 在CSS2.1规范中,每个盒模型的位置是三维的,分别是平面画布上的x轴,y轴以及表示层叠的z轴.对于每个html元素,都可以通过设置z-index属性来设置该元素在视觉渲染模型中的层叠顺序. z-index可以设置成三个值: auto,默认值.当设置为auto的时候,当前元素的层叠级数是0,同时这个盒不会创建新的层级上下文(除非是根元素,即<html>): <integer>.指示层叠级数,可以使负值,同时无论是什么值,都会创建一个新的…
文档中的层叠上下文由满足以下任意一个条件的元素形成: 1. z-index 值不为 "auto"的 绝对/相对定位. 2. position位fixed. 3. opacity 属性值小于 1. 4. transform 属性值不为 "none". 5. 一个 z-index 值不为 "auto"的 flex 项目 (flex item),即:父元素 display: flex|inline-flex. 6. html元素 7. filter值不…
对 MDN 的上的例子的拓展 Root - DIV #1(z-index: 5) - DIV #2(z-index: 2) - DIV #3(z-index: 4) - DIV #4(z-index: 6) - DIV #5(z-index: 1) - DIV #6(z-index: 3) - DIV #7(未设置 z-index, 且 opacity: 1) - DIV #8(z-index: 6) 上面结构中 DIV #4 的 z-index 比 DIV #1 的大,但因为 DIV #3 创…
通常情况下,HTML页面可以被认为是二维的,因为文本,图像和其他元素被排列在页面上而不重叠.在这种情况下,只有一个渲染进程,所有元素都知道其他元素所占用的空间.z-index属性可让你在渲染内容时调整对象分层的顺序,相信大部分人都用过position,当父元素设置了position,子元素设置position:absolute,默认是覆盖在元素上的,其实里面就隐藏了z-index的应用,今天来彻底了解这个z-index. 这边先讲个概念:层叠上下文,什么是层叠上下文:这边可以讲层叠上下文理解成一…
运用上图的逻辑,上面的题目就迎刃而解,inline-blcok 的 stacking level 比之 float 要高,所以无论 DOM 的先后顺序都堆叠在上面. 不过上面图示的说法有一些不准确,按照 W3官方 的说法,准确的 7 层为: the background and borders of the element forming the stacking context. the child stacking contexts with negative stack levels (m…
开本系列,讨论一些有趣的 CSS 题目,抛开实用性而言,一些题目为了拓宽一下解决问题的思路,此外,涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题中有你感觉到生僻的 CSS 属性,赶紧去补习一下吧. 不断更新,不断更新,不断更新,重要的事情说三遍. 谈谈一些有趣的CSS题目(一)-- 左边竖条的实现方法 谈谈一些有趣的CSS题目(二)-- 从条纹边框的实现谈盒子模型 所有题目汇总在我的 Github . 3.层叠顺序(stacking level)与堆…
开本系列,讨论一些有趣的 CSS 题目,抛开实用性而言,一些题目为了拓宽一下解决问题的思路,此外,涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题中有你感觉到生僻的 CSS 属性,赶紧去补习一下吧. 不断更新,不断更新,不断更新,重要的事情说三遍. 谈谈一些有趣的CSS题目(一)-- 左边竖条的实现方法 所有题目汇总在我的 Github . 2.类似下面这个图形,只使用一个标签,可以有多少种实现方式: 假设我们的单标签为 div: <div><…
以下内容根据官方规范翻译,没有翻译关于SVG变换的内容和关于矩阵计算的内容. 一般情况下,元素在一个无景深无立体感的平面(flat plane)上渲染,这个平面就是其包含块所处的平面.同时,页面上的其他元素也共享这个平面.2D变换函数虽然能改变元素的表现,但是这个被改变的元素仍然是在其包含块所处的平面内被渲染. 3D变换会产生一个变换矩阵,该变换矩阵在Z轴上的分量不为0.结果是把元素渲染到一个不同于其包含块所处的平面内.这将影响到通常情况下的"后来居上"的渲染规则:变换元素可能会和其相…
box-shadow介绍 在我之前的一篇文章<从天猫和支付宝身上学习opcity与rgba>中,介绍了实现双透明遮罩层效果的两种方法,分别是opacity和rgba.他们需要分别依赖于不同的html结构. 例如用opacity方法:点我查看DEMO. 我一度认为实现这种双遮罩层的效果必须需要借助background,事实上利用CSS3的box-shadow属性可以轻松模拟出这种效果.再次查看Demo. box-shadow: 0 0 0 20px rgba(0, 0 ,0 ,0.5); 五个参…
CSS 视觉格式化模型(visual formatting model)是用来处理文档并将它显示在视觉媒体上的机制.他有一套既定的规则(也就是W3C规范),规定了浏览器该怎么处理每一个盒子.以下内容翻译自W3C官方文档,其中加上了自己的一些理解.相关链接:https://www.w3.org/TR/CSS2/visuren.html#block-boxes. 1.可替换元素(Replaced element) 下面的一段话引自MDN: 典型的可替换元素有 <img>. <object&g…
概念: visual formatting model,可视化格式模型 The CSS visual formatting model is an algorithm that processes a document and displays it on visual media. 它是一种规则,用于规定用户代理如何将DOM树展示在可视化媒体中. 通俗的说,我们在HTML中写一个p标签,在浏览器中打开之后,他会是以什么样子展现出来(他的宽度.高度是多少,他在哪里,他与相邻的元素是什么关系.)这…
转载请注明出处: https://github.com/qiu-deqing/FE-interview Table of Contents generated with DocToc FE-interview $HTML, HTTP,web综合问题 常见排序算法的时间复杂度,空间复杂度 前端需要注意哪些SEO web开发中会话跟踪的方法有哪些 <img>的title和alt有什么区别 doctype是什么,举例常见doctype及特点 HTML全局属性(global attribute)有哪些…
注:以下所有例子均 只 在 iOS 的微信中测试过,但对于饿了么APP的内置浏览器同样适用(两者使用相同内核) 引题 工作中常常有需要显示大量信息的情况,列表超出一屏就涉及到滚动的问题.例如 - var n = 1 ul while n <= 100 li= n++ 在 iOS 中用微信打开,滚动非常顺滑,so far so good!但某天产品需求有变,要求加一个固定在头部的标题,于是改成这样: - var n = 1 h1= "Momentum Scrolling on iOS&quo…
[CSS深入理解之z-index]听课总结 (http://www.imooc.com/learn/643)   一.z-index基础知识 1.z-index的含义 z-index属性指定了元素及其子元素的[z顺序],而[z顺序]可以决定当元素发生覆盖的时候,哪个元素在上面.通常一个较大的z-index值的元素会覆盖较低的那一个. 2.属性值 z-index:auto; 默认值 z-index:<integer>;整数值 z-index:inherit; 继承 3.基本特性 1>支持负…
1.伪类与伪元素 1.单冒号(:)用于 CSS3 伪类,双冒号(::)用于 CSS3 伪元素. 2.对于 CSS2 中已经有的伪元素,例如 :before,单冒号和双冒号的写法 ::before 作用是一样的. 3.所以,如果你的网站只需要兼容 webkit.firefox.opera 等浏览器,建议对于伪元素采用双冒号的写法,如果不得不兼容 IE 浏览器,还是用 CSS2 的单冒号写法比较安全. 4.<img> .<input>.<iframe>,这几个标签是不支持类…
浏览器兼容性问题太让人蛋疼了,今天可是废在了IE7的z-index问题上.可又不能因为浏览器版本低而不去解决,毕竟要从用户的角度着想.百度了好多还是无法解决,最后google了一下,找到了方法. 直接上例子: Html代码代码   <div id="container"> <div id="box1">This box should be on top</div> </div> <div id="box…
by zhangxinxu from http://www.zhangxinxu.com 本文地址:http://www.zhangxinxu.com/wordpress/?p=5115 零.世间的道理都是想通的 在这个世界上,凡事都有个先后顺序,凡物都有个论资排辈.比方说食堂排队打饭,对吧,讲求先到先得,总不可能一拥而上.再比如说话语权,老婆的话永远是对的,领导的话永远是对的. 在CSS届,也是如此.只是,一般情况下,大家歌舞升平,看不出什么差异,即所谓的众生平等.但是,当发生冲突发生纠葛的时…
z-index在日常开发中算是一个比较常用的样式,一般理解就是设置标签在z轴先后顺序,z-index值大的显示在最前面,小的则会被遮挡,是的,z-index的实际作用就是这样. 但是你真的了解z-index吗?你知道它有什么特性吗?这里先抛出几个名词:“层叠顺序(stacking order)”,“层叠上下文(stacking context)”,“层叠水平(stacking level)”. 先说一下z-index的基本用法: z-index可以设置成三个值: auto,默认值.当设置为aut…
z-index和transform是CSS中的属性,但很少同学将二者联系到一起,感觉他们八杆子打不上.事实真的是这样吗?如果你也不能确认,这篇文章就值得你花点时间阅读.因为阅读完了,你会有所收获的. 堆叠上下文(Stacking Context) 在开始今天的主题之前,先得回忆一下CSS中的Stacking Context(堆叠上下文).因为只有了解清楚了这个概念,才能更好的了解下面的内容. 任何HTML文档默认的堆叠上下文都是<html>元素.因此,除非创建新的堆叠上下文.默认情况下,元素的…
通常我们在学习CSS的时候,感觉语法很容易掌握,实际应用中却碰到各式各样难以填补的“坑”,为避免大家受到同样的困惑与不解,本文详细讲解了CSS中优先级和Stacking Context等高级特性.让你更深入了解CSS. CSS 优先级 优先级是浏览器是通过判断哪些属性值与元素最相关以决定并应用到该元素上的.优先级仅由选择器组成的匹配规则决定的.如果给一个P标签增加一个类(Class),运行后Class 中的部分属性并未发生改变,及CSS选择器存在优先级问题. 选择符优先级 常见的选择器种类: 内…
transform是诸多css3新特性中最打动我的,因为它让方方正正的box module变得真实了. transform通过一组函数实现了对盒子大小.位置.角度的2D或者3D变换.不过很长时间内,我对以下问题都想不太明白: 1.尺寸缩放scale与zoom变换有何不同,为什么被scale的盒子里的内容不会错位,但zoom不是. 2.位移(transform:translate)与相对定位.绝对定位(position:relative | absolute)有何关系? 3.在实际项目中发现,位图…
前言  定位系统中第一难理解就是Normal flow,而第二就非Float莫属了,而Float难理解的原因有俩,1. 一开头我们就用错了:2. 它跟Normal flow靠得太近了.本文尝试理清Float的特性和行为特征,若有纰漏望各位指正. 被埋没的志向--文字环绕  回忆一下我们一般什么时候会想用浮动呢?是多列布局还是多列布局呢:)?其实它向往的却是这个  它想干的就是这个--文字环绕,而且CSS2中除了浮动外没有其他属性可实现上述的效果.  那到底如何理解它的实现原理呢?下面我们采取分步…
一.前言 假如只是开发简单的弹窗效果,懂得通过z-index来调整元素间的层叠关系就够了.但要将多个弹窗间层叠关系给处理好,那么充分理解z-index背后的原理及兼容性问题就是必要的知识储备了.本文作为对W3C Recommendation-Layered presentation学习后整理的笔记,以便日后查阅. 由于将英文名词翻译为中文名词容易产生歧义(如Normal flow被翻译为文档流),因此本文将直接采用原英文名词,而涉及到的英文名词解释如下: non-positioned eleme…
一.z-index z-index用来控制元素重叠时堆叠顺序. 适用于:已经定位的元素(即position:relative/absolute/fixed). 一般理解就是数值越高越靠上,好像很简单,但是当z-index应用于复杂的HTML元素层次结构,其行为可能很难理解甚至不可预测.因为z-index的堆叠规则很复杂,下面一一道来. 首先解释一个名词: stacking context:翻译就是“堆叠上下文”.每个元素仅属于一个堆叠上下文,元素的z-index描述元素在相同堆叠上下文中“z轴”…
https://www.douban.com/note/343402554/ http://www.jb51.net/css/255811.html 最后我直接removeClass;把transform:rolate(...deg)去掉,改了下逻辑,解决! 百度到这里<小心 CSS3 Transform 引起的 z-index "失效"> “CSS3 Transform create new stacking context” 这个道理想想也明白,Transform 就是…
参考这篇文章, 将外边距的 折叠 参考这篇文章, 将bfc的生成, bfc的应用 参考这篇文章 position: absolute的元素, 仍然具有内填充padding和border边框属性样式, 但没有 外边距margin属性? 这个说法是错误的! 实际操作表明, 所有的style样式属性都是具有的! 该属性设置一个定位元素沿 z 轴的位置,z 轴定义为垂直延伸到显示区的轴.如果为正数,则离用户更近,为负数则表示离用户更远. z-index 与 position属性的关系? 关于stacki…
前面所说的class html元素标签的写法也要有层次性, 这个层次性其实也就是常说的 css类写法要有一个"命名空间, 名字空间" "namespace" 在多个div轮播的情况下, 在父容器div下, 都设置成ul 或 ol其实都是可以的, 只是为了在写css代码的时候,为了便于引用 好区别, 所以把一种div写成ul, 另一种写成ol. 关于布局的选择考虑 和position-float的选择? 在元素的div的布局上, 你可以有三种选择: 自然的文档流排列,…