CSS深入理解之float(HTML/CSS)
float的设计初衷仅仅是:为了文字环绕效果
float的包裹与破坏
包裹:收缩、坚挺、隔绝(BFC)
破坏:父元素高度塌陷
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Layout</title>
<style>
.box{
border: 1px solid red;
width: 300px;
margin: 20px auto;
}
.left{
float: left;
height: 100px;
width: 50px;
border: 1px solid black;
}
.right{
float: right;
height: 100px;
width: 50px;
border: 1px solid green;
}
</style>
</head>
<body>
<div class="box">
<div class="left"></div>
<div class="right"></div>
</div>
</body>
</html>
如何降低float破坏性的影响(清除浮动)?
1、底部插入clear:both;
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Layout</title>
<style>
.box {
border: 1px solid red;
width: 300px;
margin: 20px auto;
}
.clearfix {
clear: both;
}
.left {
float: left;
height: 100px;
width: 50px;
border: 1px solid black;
}
.right {
float: right;
height: 100px;
width: 50px;
border: 1px solid green;
}
</style>
</head>
<body>
<div class="box">
<div class="left"></div>
<div class="right"></div>
<div class="clearfix"></div>
</div>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Layout</title>
<style>
.box {
border: 1px solid red;
width: 300px;
margin: 20px auto;
}
.box:after {
content: '';
display: block;
height: 0;
overflow: hidden;
clear: both;
}
.left {
float: left;
height: 100px;
width: 50px;
border: 1px solid black;
}
.right {
float: right;
height: 100px;
width: 50px;
border: 1px solid green;
}
</style>
</head>
<body>
<div class="box">
<div class="left"></div>
<div class="right"></div>
</div>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Layout</title>
<style>
.box {
border: 1px solid red;
width: 300px;
margin: 20px auto;
}
.box:after {
content: '';
display: table;
clear: both;
}
.left {
float: left;
height: 100px;
width: 50px;
border: 1px solid black;
}
.right {
float: right;
height: 100px;
width: 50px;
border: 1px solid green;
}
</style>
</head>
<body>
<div class="box">
<div class="left"></div>
<div class="right"></div>
</div>
</body>
</html>
2、父元素BFC/haslayout
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Layout</title>
<style>
.box {
border: 1px solid red;
width: 300px;
margin: 20px auto;
overflow: hidden;
}
.left {
float: left;
height: 100px;
width: 50px;
border: 1px solid black;
}
.right {
float: right;
height: 100px;
width: 50px;
border: 1px solid green;
}
</style>
</head>
<body>
<div class="box">
<div class="left"></div>
<div class="right"></div>
</div>
</body>
</html>
float的特性
1、元素block块状化(砖头化);
2、破坏性造成的紧密排列特性(去空格化)。
CSS深入理解之float(HTML/CSS)的更多相关文章
- CSS深入理解学习笔记之absolute
1.absolute和float 拥有相同的特性表现: ①包裹性(容器应用之后,可以包裹里面的内容): <!doctype html> <html> <head> ...
- CSS深入理解之absolute(HTML/CSS)
absolute和float是同父异母的兄弟,因为它们具有相同点:包裹性与破坏性 absolute的特点 1.独立的,并且可以摆脱overflow的限制,无论是滚动还是隐藏: 2.无依赖,不受rela ...
- CSS display:inline和float:left两者区别探讨
本文和大家重点讨论一下CSS display:inline和float:left两者的区别,CSS display是指显示状态,inline表示内联,特点是紧贴着前一个内联元素,通常默认的内联元素有 ...
- CSS 中,用 float 和 position 的区别是什么?
CSS 中,用 float 和 position 的区别是什么? 呃,其实这个命题有误,只有position才是定位,float不能说是定位,不过你可以说这两种布局方式有什么不同.float和posi ...
- CSS深入理解之overflow
CSS深入理解之overflow 前言 这是跟着张鑫旭重学CSS的overflow篇 基本属性 overflow有以下五个基本属性: 1.visible : 默认值,具体表现为,应用此属性后,子元素超 ...
- jsp学习---css基础知识学习,float,position,padding,div,margin
1.常用页面布局 效果图: 代码: <!DOCTYPE html> <html> <head> <meta charset="UTF-8" ...
- CSS深入理解之line-height
以下文字整理自慕课网——张鑫旭的<CSS深入理解之line-height>. line-height,又称行高,指的是两行文字基线之间的距离,又可以称为这行文字所占的高度. 定义三问: 什 ...
- 关于DIV+CSS和XHTML+CSS的理解
WEB标准是一系列标准的集合,并不是仅“DIV+CSS”布局就可以实现.以CSS网页布局只是标准的基础之一.“DIV+CSS”布局只是一种通俗的称呼罢了.而我们学习的目标在于以XHTML建立良好的语义 ...
- CSS初步理解
近期在学习牛腩的时候遇到了网页的制作.挺新奇的.其中涉及到了有关CSS的知识,于是乎自己也就花费两个小时的时间.找了本浅显易懂的书来看了一遍,从宏观上来了解CSS的相关内容.有关CSS的基础知识详见下 ...
随机推荐
- django框架--中间件系统
目录 零.参考 一.中间件的基本理解 二.中间件的系统定位 三.中间件的配置 四.中间件的执行流程 五.中间件与装饰器之间的思考 六.中间件的应用场景 七.内置中间件 八.总结 零.参考 https: ...
- (转)CentOS7使用ACL精确控制文件和目录的访问权限
原文:https://www.linuxidc.com/Linux/2018-01/150111.htm https://blog.csdn.net/maxiaoqiang1/article/deta ...
- Java之IO(八)PipedIutputStream和PipedOutputStream
转载请注明源出处:http://www.cnblogs.com/lighten/p/7056278.html 1.前言 本章介绍Java的IO体系中最后一对字节流--管道流.之前在字节数组流的时候就说 ...
- 【Java并发编程】:volatile变量修饰符
volatile用处说明 在JDK1.2之前,java的内存模型实现总是从主存(即共享内存)读取变量,是不需要进行特别的注意的.而随着JVM的成熟和优化,现在在多线程环境下volatile关键 ...
- certificate verify fails (https://gems.ruby-china.org错误
首先:执行这一步报错的背景是: 更换gems源, 通常执行 gem sources --add https://gems.ruby-china.org/ --remove https://rubyge ...
- Oracle 数据库实例
Oracle- 数据库的实例,表空间,用户,表之间的关系 一.完整的Oracle数据库通常由两部分组成:Oracle数据库和数据库实例 1.数据库是一些列物理文件的集合(数据文件,控制文件,联机文件, ...
- Android 开发服务类 02_NewsListServlet
Servlet implementation class NewsListServlet package com.wangjialin.server.xml; import java.io.IOExc ...
- 数据分析--降维--LDA和PCA
一.因子分析 因子分析是将具有错综复杂关系的变量(或样本)综合为少数几个因子,以再现原始变量和因子之间的相互关系,探讨多个能够直接测量,并且具有一定相关性的实测指标是如何受少数几个内在的独立因子所支配 ...
- freepbx的SIP通话客户端X-lite Yate eyeBeam Linphone
在上一篇文章安装freepbx后创建sip分机里我们已经创建好了SIP分机,接下来我们使用几大客户端进行登陆.我们接下来会使用到的软件有X-lite,Yate client,eyeBeam, Linp ...
- hibernate原生sql封装,报错信息:could not find setter for rownum_
今天用hibernate的时候,用了一个原生态sql做了一个分页查询,结果就报错了... 找到解决方法了:http://shmily2038.iteye.com/blog/1704963