嗨,我真的很困惑一些绝对定位的基础知识.
<!DOCTYPE html>
<html>
<head>
<link href="http://yui.yahooapis.com/3.0.0/build/cssreset/reset-min.css" rel="stylesheet" type="text/css" />
<style>
#containingBlock {
position: relative;
background: green;
}
#abs {
position: absolute;
background: blue;
top: auto;
}
</style>
</head>
<body>
<div id="containingBlock">
<p>foo</p>
<div id="abs">bar</div>
</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
使用如上所述的标记,div#abs不与foo段重叠.
我知道我可以通过给top值0而不是auto来做到这一点,但是因为div#containingBlock没有填充,我认为auto和0会做同样的事情.
但是,如果段和div#abs在源顺序中切换 - 使得bar在foo -top:auto之前出现; 完全符合我的预期.
任何解释都赞赏!
在JavaScript中:理解奇怪的部分教师解释变量的内存是在所谓的创建阶段(并且undefined 被分配)中建立的; 然后执行阶段发生.但是,当我们不知道变量稍后指向的值时,为什么这很有用呢?
显然,变量可以指向许多不同的东西 - 例如从短字符串一直到深度嵌套的对象结构 - 我认为它们可以在所需的内存量上大相径庭.
如果逐行执行 - 包括变量赋值 - 仅在稍后的执行阶段发生,那么初始创建阶段如何知道如何设置内存?或者,是否仅为每个变量名称/值对中的名称留出内存,并且以不同方式管理值的内存?
我不知道它是否会,但是如果我的服务器以 HTTP 状态代码 304 响应,Fetch API(特别是 response.ok)是否会axios.get()看到响应为 200?
两者的文档都谈到如果响应代码在 200-299 范围内,则请求被视为成功,但显然 304 不在此范围内。