CSS的浮动与定位的灵活应用
目录
一、CSS浮动的应用
1、什么是css
浮动的框可以向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止。
由于浮动框不在文档的普通流中,所以文档的普通流中的块框表现得就像浮动框不存在一样。
2、css的传统应用方法
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
[class^="item"]{
background-color:#f5f5f5;
display:block;
border: solid 1px black;
}
.left{
float: left;
}
.container{
background-color:#ff000052;
}
</style>
</head>
<body>
<div class="container">
<div class="item1 left">1</div>
<div class="item2 left">2</div>
<div class="item3 left">3</div>
<div class="item4 left">4</div>
<div class="item5 left">5</div>
<div class="item6 left">6</div>
<div style="clear:both"></div>
</div>
<div>7<div>
</body>
3、css的灵活应用方法
<head>
<meta charset="UTF-8">
<title>Title</title>
<style>
[class^="item"]{
background-color:#f5f5f5;
display:block;
border: solid 1px black;
}
.left{
float: left;
}
.container{
background-color:#ff000052;
}
.clearfix:after{
content:'.';
display:block;
clear:both;
visibility:hidden;
height:0;
}
</style>
</head>
<body>
<div class="container clearfix">
<div class="item1 left">1</div>
<div class="item2 left">2</div>
<div class="item3 left">3</div>
<div class="item4 left">4</div>
<div class="item5 left">5</div>
<div class="item6 left">6</div>
</div>
<div>7<div>
</body>
以上两端代码实现的结果都是一样的如下图所示,只是传统方法在每一个浮动的标签块沉底的时候增加一个div属性赋予clear:both,虽然可以实现,但是每一次都需要去写这个div。而第二个方法就要简单一些。
二、css定位的应用
1、元素的定位属性
元素的定位属性主要包括定位模式和边偏移两部分。
定位模式 + 边偏移 = 完整定位
- 偏移量
边偏移属性 | 描述 |
---|---|
top | 顶端偏移量,定义元素相对于其父元素上边线的距离 |
bottom | 底部偏移量,定义元素相对于其父元素下边线的距离 |
left | 左侧偏移量,定义元素相对于其父元素左边线的距离 |
right | 右侧偏移量,定义元素相对于其父元素右边线的距离 |
- 定位模式
在CSS中,position属性用于定义元素的定位模式,其基本语法格式如下:
选择器{position:属性值;}
值 | 描述 |
---|---|
static | 自动定位(默认定位方式) |
absolute | 相对定位,相对于其原文档流的位置进行定位 |
relative | 绝对定位,相对于其上一个已经定位的父元素进行定位 |
fixed | 固定定位,相对于浏览器窗口进行定位 |
2、四种定位的介绍
-
静态定位(static)
静态定位是所有元素的默认定位方式,当position属性的取值为static时,可以将元素定位于静态位置。 所谓静态位置就是各个元素在HTML文档流中默认的位置。
-
相对定位(relative)
对定位是将元素相对于它在标准流中的位置进行定位,当position属性的取值为relative时,可以将元素定位于相对位置。
-
绝对定位adsolute
[注意] 如果文档可滚动,绝对定位元素会随着它滚动,因为元素最终会相对于正常流的某一部分定位。
当position属性的取值为absolute时,可以将元素的定位模式设置为绝对定位。
注意: 绝对定位最重要的一点是,它可以通过边偏移移动位置,但是它完全脱标,完全不占位置。
-
固定定位fixed
注意:本博文只是为了方便本人复习而资料的整理,因有资源来源于其他网站,若有涉及到侵权,请相应作者联系我删除即可,谢谢!