前端定位
2018-07-10 本文已影响0人
唐朝集团
相对定位:
参照自身位置进行定位,每个元素在页面的文档流中都有一个自然位置,相对于这个位置对于元素进行移动就称之为相对定位。周围元素并不受影响。当position属性设置为relative时,就开启了元素的相对定位。当开启了相对定位以后,可以使用 top ,right,bottom,left,这四个属性对元素进行定位
相对定位特点:
如果不设元素的偏移量,元素位置不会发生变化。相对定位不会使元素脱离文档流,元素在文本流中的位置不会变。相对定位并不会改变元素原来的特性。相对定位使元素的层级提升,是元素可以覆盖文本流中的元素。
绝对定位:
绝对定位指的是使元素相对于html元素或者离他最近的祖先定位元素进行定位。当将position属性设置为absolute时,开启了元素的绝对定位。当开启了绝对定位以后,可以使用top,right,bottom,left四个属性对元素进行定位。
绝对定位的特性:
绝对定位会使元素完全脱离文本流。绝对定位的块元素宽高会被其输入的内容撑开。绝对定位会使行内元素变成块元素。一般使用绝对定位时会同时为其父元素制定一个相对定位,以确保元素可以相对于父元素进行定位。
固定定位:
固定定位的元素会被锁定在屏幕上的某个位置,当访问者滚动网页时,固定元素会在屏幕保持不动。当将position属性设置为fixed时,则开启了元素的固定定位。当开启了固定定位以后,可以使用top,right,bottom,left四个属性对元素进行定位。固定定位的其他特性和绝对定位类似。当元素开启定位以后可以设置z-index这个属性。这个属性可以提升定位元素所在的层级。z-index可以指定一个整数作为参数,值越大显示的优先级越高,也就是z-index值较大的元素会显示在网页 的最上层
文档流:
文档流指的是文档中可实现的对象在排列时所占用的位置。将窗体自上而下分成一行行,并在每行中按从左至右的顺序排列元素,即为文档流。也就是说在文档流中元素默认会贴在上一个元素的右边,如果右边不足以放下元素,元素则会另起一行,在新的一行中继续从左到右摆放。这样一来每一块元素都会另起一行,那么我们如果想在文档流中进行布局就会变得比较麻烦
家庭作业:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>开班计划</title>
<link rel="stylesheet" type="text/css" href="kb.css">
</head>
<body>
<div class="box1">
<div class="box2">
<a href="#">18年面授开班计划</a>
<h3>近期开班</h3>
</div>
<div class="box3">
<h3><a href="#">人工智能+python-高薪就业班</a></h3>
<ul>
<li>
<a href="#">开班时间:<span class="red-font">2018-04-26</span></a>
<a class="right" href="# "><span class="red-font">预约报名</span></a>
</li>
</ul>
<ul>
<li>
<a href="#">开班时间:<span class="red-font">2018-03-23</span></a>
<a class="right" href="#"><span class="red-font">无座,名额爆满</span></a>
</li>
</ul>
<ul>
<li>
<a href="#">开班时间:<span>2018-01-23</span></a>
<a class="right" href="# "><span>开班盛况</span></a>
</li>
</ul>
<ul>
<li>
<a href="#">开班时间:<span>2017-12-10</span></a>
<a class="right" href="# "><span>开班盛况</span></a>
</li>
</ul>
<ul>
<li>
<a href="#">开班时间:<span>2017-11-18</span></a>
<a class="right" href="# "><span>开班盛况</span></a>
</li>
</ul>
</div>
<div class="box3">
<h3><a href="#">Android开发+测试-高薪就业班</a></h3>
<ul>
<li>
<a href="#">开班时间:<span class="red-font">2018-04-26</span></a>
<a class="right" href="# "><span class="red-font">预约报名</span></a>
</li>
</ul>
<ul>
<li>
<a href="#">开班时间:<span>2018-03-23</span></a>
<a class="right" href="#"><span>开班盛况</span></a>
</li>
</ul>
<ul>
<li>
<a href="#">开班时间:<span>2018-01-23</span></a>
<a class="right" href="# "><span>开班盛况</span></a>
</li>
</ul>
<ul>
<li>
<a href="#">开班时间:<span>2017-12-10</span></a>
<a class="right" href="# "><span>开班盛况</span></a>
</li>
</ul>
</div>
<div class="box3">
<h3><a href="#">大数据软件开发-青芒工作室</a></h3>
<ul class="no-border">
<li>
<a href="#">开班时间:<span class="red-font">2018-04-26</span></a>
<a class="right" href="# "><span class="red-font">预约报名</span></a>
</li>
</ul>
<ul>
<li>
<a href="#">开班时间:<span>2018-01-23</span></a>
<a class="right" href="# "><span>开班盛况</span></a>
</li>
</ul>
</div>
</div>
</body>
</html>
选择器调用:
*{
margin: 0;
padding: 0;
}
body{
font: 12px/1 宋体;
}
.box1{
width: 300px;
margin: 50px auto;
}
.box2{
border-top: 2px #52bbae solid;
height: 36px;
background-color: #f5f5f5;
line-height: 36px;
padding:0px 20px 0px 16px;
}
.box2 a{
float: right;
color: red;
}
.box2 h3:hover{
float:left;
font: 10px '宋体';
list-style: none;
}
.box3 a{
color: black;
text-decoration: none;
font-size: 12px;
}
.box3 a:hover{
color: red;
text-decoration: underline;
}
.box3 h3{
margin-top: 15px;
margin-bottom: 15px;
}
.box3 ul{
list-style: none;
border-bottom:1px dashed #deddd9;
}
.box3 li{
margin-bottom: 15px;
}
.box3 .red-font{
color: red;
font-weight: bold;
}
.box3 .right{
float: right;
}
.box3 .no-border{
border: none;
}