1.浮动float

  div配合float浮动来做页面的布局,浮动最常用的地方就是用来做布局。只有一个标签设置了浮动float属性,就会变成块级标签。

<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>10float页面布局示例</title> <style> * {
margin: 0px;
padding: 0px;
} .c1 {
height: 1000px;
width: 20%;
background-color: darkslategrey;
float: left; /* 使用浮动属性,将div1和div2两个块级标签横向推挤在一起。如果两个标签能够摆在一排,就会浮动到一起 */
} .c2 {
height: 1000px;
width: 80%;
background-color: black;
float: left;
} </style>
</head>
<body> <!-- 设置一个div占用屏幕左侧的百分20,一个div占屏幕右侧的百分之80 -->
<div class="c1"></div>
<div class="c2"></div> </body>
</html>

2.清除浮动clear属性

(1)利用伪元素具有clear清除浮动的属性来解决父标签塌陷的问题(父标签撑不起来的问题)

<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>11清除浮动示例</title> <style>
/* 通用样式将整个浏览器的外边距与内边距设置为0 */
* {
margin: 0;
padding: 0;
} #d1 {
border: 1px solid black;
} .c1,
.c2 {
float: left; /* 左浮动 */
height: 100px;
} /*.c3 {*/
/*!*height: 100px;*!*/
/*clear: left;*/
/*}*/ /* 在d1这个标签的最后加一个伪元素,伪元素的内容为空,但具有清除浮动的属性,解决了父标签塌陷问题*/
#d1:after {
content: "";
clear: left;
display: block;
}
</style> </head>
<body> <div id="d1">
<div class="c1">c1</div>
<div class="c2">c2</div>
</div> </body>
</html>

3.overflow溢出属性

(1)利用overflow溢出属性做圆形头像的例子

<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>12overflow示例</title>
<style>
.c1 {
width: 120px;
height: 120px;
border: 1px solid black;
/*overflow: scroll; !* 当内容溢出时,则会使用滚动条,防止内容溢出 *!*/
overflow: auto; /* 同样是增加了滚动条来防止溢出*/
}
/* 使头像变成圆形的例子 */
.header-img {
width: 120px;
height: 120px;
border: 2px solid #FF0000;
border-radius: 100%; /* 圆形边框 */
overflow: hidden; /* 如果内容溢出了则隐藏掉溢出的部分 */
} img {
max-width: 100%; /* 设置图片的最大宽度为100%,也就是和父标签一样大 */
}
</style> </head>
<body>
<!-- 由于文本内容过多,文本内容超过了父标签的长和高,则发生内容了溢出 -->
<div class="c1">海燕啊,你可长点心吧燕啊,你可长点心吧。燕啊,你可长点心吧。燕啊,你可长点心吧。燕啊,你可长点心吧。。</div> <!-- 利用overflow溢出的属性来完成圆形的头像,设置好了父标签的大小,在父标签里用一个字标签设置图片,子标签的图片比父标签大的话,则利用子标签的max-width: 100%来解决,圆形利用父标签的溢出属性解决 -->
<div class="header-img">
<img src="huluwa.png" alt="">
</div>
</body>
</html>

4.清除浮动示例

<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<title>float下午版</title>
<style>
#d1 {
border: 1px solid black;
} .c1 {
height: 50px;
width: 50px;
background-color: blue;
border: 1px solid red;
float: left; /* 增加左浮动属性 */
} /* 清除浮动的副作用,高度不会跑了 */
/*.c2 {*/
/*background-color: darkslategrey;*/
/*clear: left; !* 清除左浮动,有了这句话就可以让d1标签撑起来了,左边不能有浮动的元素 *!*/
/*}*/ /* 另外一种清除浮动副作用的方法 */
/*#d1:after {*/
/*content: '';*/
/*clear: both;*/
/*display: block;*/
/*}*/ /* 使用类样式进行清除浮动,之后只要需要清除浮动,标签都可以使用这个样式 */
.clearfix:after {
content: '';
clear: both;
display: block;
} </style>
</head>
<body> <div id="d1" class="clearfix">
<div class="c1"></div> <!-- c1的浮动属性会导致d1这个父标签的高度撑不起来 -->
<div class="c1"></div>
<div class="c1"></div>
<div class="c1"></div>
<div class="c2"></div>
</div> <div class="c3">我是解药</div> </body>
</html>

CSS浮动和清除浮动的更多相关文章

  1. css用clearfix清除浮动

    本文从http://www.studyofnet.com/news/196.html复制.   本文导读:写css 时总为浮动而烦恼,如果用了浮动,浮动的父层不会跟着浮动框的高度增加而增加,在Fire ...

  2. css 浮动和清除浮动

    在写页面布局的过程中,浮动是大家经常用的属性.在好多的排版布局中都是用的的浮动比如说下面这些地方都是应用到了浮动. 在我学习浮动的时候可是熬坏了脑筋,在这里我分享一下我对浮动这块知识的总结. 一.浮动 ...

  3. 【转】CSS中的浮动和清除浮动

    以下转自<CSS中的浮动和清除浮动,梳理一下!> 浮动到底是什么? 浮动核心就一句话:浮动元素会脱离文档流并向左/向右浮动,直到碰到父元素或者另一个浮动元素.请默念3次! 浮动最初设计的目 ...

  4. [Web 前端] CSS篇之2. 清除浮动,什么时候需要清除浮动,清除浮动都有哪些方法

    cp: https://blog.csdn.net/zengyonglan/article/details/53304487 2. 清除浮动,什么时候需要清除浮动,清除浮动都有哪些方法 ? 一.什么时 ...

  5. 浅谈css中浮动和清除浮动带来的影响

    有很多时候,我们都会用到浮动,而我们有时候对浮动只是一知半解,却不是太清楚它到底是怎么回事,不知道各位有没有和我一样的感觉,只知道用它,却不知道它到底是怎么回事,所以,在学习的过程中,就要把一个概念不 ...

  6. CSS浮动与清除浮动(overflow)例子

    在css中浮动与清除浮动功能是我们开发中常用到的一个功能了,下面小编来为各位分析关于CSS浮动与清除浮动(overflow)例子吧. float脱离文本流,可是为什么文字却会有环绕的效果,这点实在是神 ...

  7. 重温前端基础之-css浮动与清除浮动

    文档流的概念指什么?有哪种方式可以让元素脱离文档流? 文档流,指的是元素排版布局过程中,元素会自动从左往右,从上往下的流式排列.并最终窗体自上而下分成一行行,并在每行中按从左到右的顺序排放元素.脱离文 ...

  8. CSS中如果实现元素浮动和清除浮动,看这篇文章就足够了

    浮动基本介绍 在标准文档流中元素分为2种,块级元素和行内元素,如果想让一些元素既要有块级元素的特点也同时保留行内元素特点,只能让这些元素脱离标准文档流即可. 浮动可以让元素脱离标准文档流,可以实现让多 ...

  9. float浮动与清除浮动

    浮动: 浮动的框可以左右移动,直到它的边缘碰到包含框或另一个浮动框的边框为止.文档的普通流中的块框会当浮动框不存在一样.但会影响内联框(通常是文本)的排列. 属性值有:left,right,none; ...

随机推荐

  1. kubernetes:用label让pod在指定的node上运行(kubernetes1.18.3)

    一,为什么要为node指定label? 通常scheduler会把pod调度到所有可用的Node,有的情况下我们希望能把 Pod 部署到指定的 Node, 例如: 有的Node上配备了速度更快的SSD ...

  2. linux wget指定下载目录和重命名

    当我们在使用wget命令下载文件时,通常会需要将文件下载到指定的目录,这时就可以使用 -P 参数来指定目录,如果指定的目录不存在,则会自动创建. 示例: p.p1 { margin: 0; font: ...

  3. php进程 swoole

    <?php $pid = posix_getpid(); $ppid = posix_getppid(); var_dump($pid); cli_set_process_title(" ...

  4. CentOS安装MySQL详解 转

      引言 最近某云搞活动,买了个服务器作为平时学习和测试用,新机器啥也没有,一些常用软件的安装是免不了的,于是乎想着把安装过程都详细记录下来,一是做个备忘,二是给有需要的同学作个参考. Linux上安 ...

  5. Ubuntu服务安装

    一.ifconfig命令安装 sudo apt install net-tools 二.ssh服务安装 sudo apt-get install openssh-server netstat -ltn ...

  6. 说明资源路径位置类型无法解析The type javax.servlet.http.HttpServletResponse cannot be resolved.

    导入dispatch项目后报错: 解决办法:在项目上单击鼠标右键>  Add Libraries  选择 Server Runtime,下一步  选中Apache Tomcat7 完成  切换标 ...

  7. docker安装部署neo4j

    docker部署neo4j 环境:ubuntu16.04LTS docker安装 详见:菜鸟教程(docker安装) docker国内镜像源配置 第一步,进入阿里云,登陆后点击左侧的镜像加速,生成自己 ...

  8. Java Web核心组件之Servlet的使用介绍

    Servlet是Java Servlet的简称,称为小程序或服务连接器,用Java编写的服务端程序,主要功能在于交互式地浏览和修改数据,生成动态的Web内容:Servlet运行于支持Java的应用服务 ...

  9. 浅谈DevOps

    DevOps: Development和Operations的组合,是一种软件开发方法,涉及软件在整个开发生命周期中的持续开发,持续测试,持续集成,持续部署和持续监控. 可以把DevOps看作系统开发 ...

  10. JavaScript实现基于数组的栈

    class StackArray {   constructor() {     this.items = [];   }   push(element) {     this.items.push( ...