为什么给父盒子设置了定位子元素会把父盒子的内容遮盖住?

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<meta name="viewport" content="width=device-width, initial-scale=1.0">

<meta http-equiv="X-UA-Compatible" content="ie=edge">

<title>Document</title>

   <style>

body {

height: 100%;

}

.box1 {

position: fixed;

width:100px;

height: 100px;

background: blue;

}  

.box2 {

width: 50px;

height: 50px;

background: red;

}

</style>

</head>

<body>

<div class="box1"><div class="box2"></div></div>

</body>

</html>


伪装的很酷
浏览 1418回答 1
1回答

pardon110

CSS position属性用于指定一个元素在文档中的定位方式。而fixed是其取值之一。默认情况下,使用正常的布局行为(没有position的css样式属性元素),隐性的定位为static,即元素在文档常规流中当前的布局位置。而fixed.官方给出的指引如下:fixed 不为元素预留空间,而是通过指定元素相对于屏幕视口(viewport)的位置来指定元素位置。元素的位置在屏幕滚动时不会改变。打印时,元素会出现在的每页的固定位置。fixed 属性会创建新的层叠上下文。简单来说,当你给元素定位取值fixed,它会从普通的static定位,改为fixed定位。即通常所说的脱离了文档流,它的参照的定位对象,不再是文档,而是你所用浏览器的视窗。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Html5