浮动布局


<html>
<head>
<meta charset="utf-8">
<title>浮动</title>
<style type="text/css">
.box1{
height:50px;
background-color:red;
}
.box2{
height:50px;
background-color:blue;
}
</style>
</head>
<body>
<div class="box1"></div>
<div class="box2"></div>
</body>
</html>

以上为两个基本的div

此时给box1加一个向左浮动:

.box1{
height:50px;
background-color:red;
float:left;
}

此时结果如下图: 

此时,红色box1不见了

原因:box1里面没有内容,且没有设置宽度,当设置浮动时,尺寸得不到扩展,会缩成一个小圆点,出现在浏览器左上角。

这时候我们给box1填充内容,再来看看效果

 <div class="box1">这里是box1,哈哈哈哈哈哈哈</div>
  • 1

当元素没有设置宽度值,而设置了浮动属性,元素的宽度随内容的变化而变化。

清除浮动

当元素设置浮动属性后,会对相邻的元素产生影响,相邻元素特指紧邻后面的元素,所以有时需要用到清除浮动的方法。

例如. 给box2填充内容:

<div class="box2">这里是box2,哈哈哈哈哈哈哈</div>
  • 1

给box2增添一句向左浮动的代码:

 .box2{
height:50px;
background-color:blue;
float:left;
}

此时效果如下图: 

在box2的div后增添一个p标签,填充内容:

<p>这里是box2后面的一个段落,紧邻在box2后面,是box2的相邻元素</p>
  • 1

此时效果如下图: 

此时因为p元素为box2的相邻元素,由于box2向左浮动,故对p元素产生了影响。所以现在需要清除浮动,达到p元素在box2下面,独占一行的效果。

清除浮动的方法:

  1. 给需要清除浮动的元素增添属性值:clear:left;/right;/both; 
    即为不允许左侧/右侧/两边有浮动对象。

    注意:这个规则只能影响使用清除的元素本身,不能影响其他元素。

  2. 同时设置 
    1).width:100%;(或固定宽度) 
    2).overflow:hidden;

此时来试试清除浮动的方法 
1).给p元素增添属性值,达到清除浮动的目的:

p{
clear:left;
}

使用clear:left;指定p元素左边不出现浮动元素,这样p元素被迫下移一行

效果如下图: 

2).第二种方法也能达到和第一种方法一样的效果,如上图所示。

p{
width:100%;
overflow:hidden;
}
  • 1
  • 2
  • 3
  • 4

现在我将所有的代码全部贴上来:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>浮动</title>
<style type="text/css">
.box1{
height:50px;
background-color:red;
float:left;
}
.box2{
height:50px;
background-color:blue;
float:left;
}
p{
clear:left; /*清除浮动方法一*/
/*width:100%;
overflow:hidden;*//*清除浮动方法二*/
}
</style>
</head>
<body>
<div class="box1">这里是box1,哈哈哈哈哈哈哈</div>
<div class="box2">这里是box2,哈哈哈哈哈哈哈</div>
<p>这里是box2后面的一个段落,紧邻在box2后面,是box2的相邻元素</p>
</body>
</html>

《网页布局基础篇》—浮动布局和float属性的更多相关文章

  1. CSS布局 ——从display,position, float属性谈起(转)

    CSS布局 ——从display,position, float属性谈起   页面布局,或者是在页面上做些小效果的时候经常会用到 display,position和float 属性,如果对它们不是很了 ...

  2. IOS自己主动布局中的浮动布局(6)----MyFloatLayout横空出世

    https://github.com/youngsoft/MyLinearLayout 前言 在MyLayout的6大布局中,每种布局都有不同的应用场景. 且每种布局的子视图的约束机制不一样:线性布局 ...

  3. 页面标准文档流、浮动层、float属性(转)

    CSS float 浮动属性介绍 float属性:定义元素朝哪个方向浮动. 1.页面标准文档流.浮动层.float属性 1.1 文档流 HTML页面的标准文档流(默认布局)是:从上到下,从左到右,遇块 ...

  4. 【网页布局基础】css布局学习总结

    三种定位机制 1.标准文档流:从上到下,从左到右输出文档内容 2.浮动 3.绝对定位 需要注意的是块级元素如div p ul 等 行级元素如span strong img input等 块级元素与行级 ...

  5. CSS布局 ——从display,position, float属性谈起

    页面布局,或者是在页面上做些小效果的时候经常会用到 display,position和float 属性,如果对它们不是很了解的话,很容易出现一些莫名其妙的效果,痛定思痛读了<CSS Master ...

  6. 使用flex弹性布局代替传统浮动布局来为微信小程序写自适应页面

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_109 我们知道,写习惯了前端的人,一般切图后布局页面的话,上手最习惯的是基于盒子模型的浮动布局,依赖 display 属性 + p ...

  7. 《网页布局基础篇》HTML+CSS单列布局--水平居中,垂直居中,水平垂直居中

    https://blog.csdn.net/panlu666_pl/article/details/66480433 一.水平居中 子元素在父元素中水平居中 1.使用 text-align和inlin ...

  8. python 网页爬虫 基础篇

    首先要连接自己的数据库 import pymysql import requests #需要导入模块 db = pymysql.connect('localhost', 'root', '****** ...

  9. (spring-第12回【IoC基础篇】)JavaBean的属性编辑器

    在spring实例化bean的最后阶段,spring利用属性编辑器将配置文件中的文本配置值转换为bean属性的对应值,例如: 代码0011 <bean id="car" cl ...

随机推荐

  1. js中的 true 与 false

    可判断为 false 的情况: 0,-0,NaN,undedined,"",false,null,缺省的值 可判断为 true 的情况: 除false的其他情况均可,包括负数.&q ...

  2. 素数(质数)(Java版)

    4.输出质数(素数) 素数(质数):是指在大于1的自然数中,除了1和它本身外,不能被其他自然数整除(除0以外)的数 public class PrimeNumber { public static v ...

  3. netcore一键nssm发布为windows服务

    AntDeploy 是我开发一款开源一键部署工具包 发布功能支持: docker容器一键部署 docker镜像一键发布 支持iis一键部署 windows服务一键部署 linux服务一键部署 支持增量 ...

  4. include 与 Widget

    include :include 引入的页面动态加载数据时,需要在当前页面中写数据加载,而不是只在引入的页面中就可以了:

  5. tp3常量

    __MODULE__ __CONTROLLER__

  6. Python小白的数学建模课-10.微分方程边值问题

    小白往往听到微分方程就觉得害怕,其实数学建模中的微分方程模型不仅没那么复杂,而且很容易写出高水平的数模论文. 本文介绍微分方程模型边值问题的建模与求解,不涉及算法推导和编程,只探讨如何使用 Pytho ...

  7. Vulhub-DC-1靶场

    前言: DC-1靶场是Vulhub系一款渗透测试的实战靶场,拥有五个Flag.本篇博客讲述了如何拿去这五个Flag,并详细描述其中的注意点. 实验环境: 虚拟机环境:virtualbox 虚拟机1:D ...

  8. Jetpack Compose学习(1)——从登录页开始入门

    原文地址:Jetpack Compose学习(1)--从登录页开始入门 | Stars-One的杂货小窝 Jetpack Compose UI在前几天出了1.0正式版,之前一直还在观望,终于是出了正式 ...

  9. Redmine Notes

    Mandatory authenticaion: login as Administrator, Settings -> Authentication -> Check "Aut ...

  10. JSON.stringify()的用法

    **JSON.stringify() 方法用于将 JavaScript 值转换为 JSON 字符串,而我们一般只是用了第一个参数,没有在意过第二个以及第三个参数的妙用** **1.最常用的方式:** ...