美文网首页
浮动、定位

浮动、定位

作者: 王康_Wang | 来源:发表于2016-06-26 10:49 被阅读0次

1.文档流的概念指什么?有哪种方式可以让元素脱离文档流?

浏览器逐行渲染html文档中的代码,也就是说元素按照在网页源代码中出现的顺序从上至下,从做左至右输出到显示器上。
有浮动float和定位position可使元素脱离文档流(position:static情况除外)。

2.有几种定位方式,分别是如何实现定位的,使用场景如何?

效果
inhert 规定应该从父元素继承 position 属性的值
static 默认值,没有定位,元素出现在正常的流中(忽略 top, bottom, left, right 或者 z-index 声明)
relative 生成相对定位的元素,相对于元素本身正常位置进行定位, 因此,left:20px会向元素的 left 位置添加20px
absolute 生成绝对定位的元素,相对于static定位以外的第一个祖先元素(offset parent)进行定位,元素的位置通过left, top, right以及bottom属性进行规定
fixed 生成绝对定位的元素,相对于浏览器窗口进行定位。元素的位置通过left, top, right以及bottom属性进行规定
sticky CSS3新属性,表现类似position:relativeposition:fixed的合体,在目标区域在屏幕中可见时,它的行为就像position:relative;而当页面滚动超出目标区域时,它的表现就像position:fixed;,它会固定在目标位置

3.absolute, relative, fixed偏移的参考点分别是什么?

  • position:absolute;的参考点是元素的除了static定位意外的第一个祖先元素;
  • position:relative;的参考点是元素本身的正常位置;
  • position:fixed;是相对于浏览器窗口进行定位的。

4.z-index 有什么作用?如何使用?

  • z-index属性设置元素堆叠顺序。z-index值大的元素显示在最前面。z-index只能在非position:static;元素上实现

5.position:relative和负margin都可以使元素位置发生偏移?二者有什么区别?

  • position:relative元素在文档流中的空间位置不变,如例中div4
  • 负margin元素所占空间随元素本身移动。如例中div2.

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>task10</title>
<style type="text/css">
div {
width:100px;
height:100px;
border:1px solid;
}
.div1 {
background:yellow;
}
.div2 {
background:red;
margin-top:-20px;
margin-left:20px;
}
.div3 {
background:green;
}
.div4 {
background:pink;
position:relative;
top:-20px;
left:20px;
}
.div5 {
background:#ccc;
}
</style>
</head>
<body>
<div class="div1">div1</div>
<div class="div2">div2</div>
<div class="div3">div3</div>
<div class="div4">div4</div>
<div class="div5">div5</div>
</html>```

Paste_Image.png

6.如何让一个固定宽高的元素在页面上垂直水平居中?

i. 给要居中元素添加position:absolute;top:50%;left:50%;属性,同时添加负边距margin-top:-51px;margin-left:-51px;

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>task10</title>
<style type="text/css">
body {
margin:0;
padding:0;
}
.div1 {
width:100px;
height:100px;
border:1px solid;
background:red;
position:absolute;
top:50%;
left:50%;
margin-top:-51px;
margin-left:-51px;
}

</style>

</head>
<body>
<div class="div1">垂直水平居中</div>
</html>```
实现效果:

Paste_Image.png

ii.

<!DOCTYPE html>
<html>
<head>
   <meta charset="utf-8">
   <title>task10</title>
   <style type="text/css">
       body {
           margin:0;
           padding:0;
       }
       .div1 {
           background:red;
           width:100px;
           height:100px;
           position:absolute;
           top:0;
           bottom:0;
           left:0;
           right:0;
           margin:auto;
   </style>
</head>
<body>
<div class="div1">
       该元素垂直水平居中
</div>
</html>```
实现效果:

![Paste_Image.png](https://img.haomeiwen.com/i2198142/ae8bfdcf111f1f92.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

###7.浮动元素有什么特征?对其他浮动元素、普通元素、文字分别有什么影响?
- 浮动元素脱离正常文档流,并根据float属性值进行排列。其他非浮动元素重新按照正常文档流排列。
- 浮动元素与其之后的非浮动元素会产生重叠的情况,但非浮动元素中的文字等内容不会与浮动元素发生重叠,将被挤出浮动元素区域。

###8.清除浮动指什么?如何清除浮动?
- 清除浮动指的是改变元素位置,使其在指定方向上没有浮动元素。
- 通过```clear```属性来实现清除浮动,清除浮动的结果会使添加了```clear```属性的元素移动合适位置,而不是其他元素避开。

***
*本教程版权归本人和饥人谷所有,转载请注明来源。*

相关文章

  • css定位

    CSS 定位 (Positioning) 属性允许你对元素进行定位。 CSS 定位和浮动 CSS 为定位和浮动提供...

  • CSS 定位

    CSS 定位 (Positioning) 属性允许你对元素进行定位。 CSS 定位和浮动 CSS 为定位和浮动提供...

  • CSS 定位 (Positioning)

    CSS 定位 (Positioning) 属性允许你对元素进行定位。 CSS 定位和浮动 CSS 为定位和浮动提供...

  • 定位及浮动

    定位# 元素定位: 浮动###### eg:######

  • CSS定位

    CSS定位(Positioning)允许你对元素进行定位。 CSS 定位和浮动 CSS 为定位和浮动提供了一些属性...

  • 浮动&定位

    浮动元素有什么特征?对父容器、其他浮动元素、普通元素、文字分别有什么影响?浮动元素脱离文档流,在当前行的左边或是右...

  • 浮动&定位

    关于浮动 浮动元素会脱离正常的文档流,按照其外边距指定的位置相对于它的上一个块级元素(或父元素)显示浮动元素后面的...

  • 浮动、定位

    1 . 文档流的概念指什么,有哪种方式可以让元素脱离文档流 CSS普通流/文档流(normal flow)是元素按...

  • 浮动定位

    浮动元素 浮动元素的特征其框可以左右移动(根据float属性值而定),直到它的外边缘碰到包含框或者另一个浮动元素的...

  • 浮动、定位

    浮动 浮动的特点 浮动会使元素脱离文档流 任何元素设置浮动 都会变为块状元素 浮动的元素会对兄弟元素和父元素产生直...

网友评论

      本文标题:浮动、定位

      本文链接:https://www.haomeiwen.com/subject/xgradttx.html