菜单 学习猿地 - LMONKEY

VIP

开通学习猿地VIP

尊享10项VIP特权 持续新增

知识通关挑战

打卡带练!告别无效练习

接私单赚外块

VIP优先接,累计金额超百万

学习猿地私房课免费学

大厂实战课仅对VIP开放

你的一对一导师

每月可免费咨询大牛30次

领取更多软件工程师实用特权

入驻

CSS Float(浮动)

原创
05/13 14:22 更新

CSS Float(浮动)

CSS float 属性定义元素在哪个方向浮动,浮动元素会生成一个块级框,直到该块级框的外边缘碰到包含框或者其他的浮动框为止。


什么是 CSS Float(浮动)?

图片.png

CSS 的 Float(浮动),会使元素向左或向右移动,其周围的元素也会重新排列。

Float(浮动),往往是用于图像,但它在布局时一样非常有用。


元素怎样浮动

元素的水平方向浮动,意味着元素只能左右移动而不能上下移动。

一个浮动元素会尽量向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止。

浮动元素之后的元素将围绕它。

浮动元素之前的元素将不会受到影响。

如果图像是右浮动,下面的文本流将环绕在它左边:

实例

img  
{  
float:right;  
}

彼此相邻的浮动元素

如果你把几个浮动的元素放到一起,如果有空间的话,它们将彼此相邻。

在这里,我们对图片廊使用 float 属性:

实例

.thumbnail  
{  
float:left;  
width:110px;  
height:90px;  
margin:5px;  
}

清除浮动 - 使用 clear

元素浮动之后,周围的元素会重新排列,为了避免这种情况,使用 clear 属性。

clear 属性指定元素两侧不能出现浮动元素。

使用 clear 属性往文本中添加图片廊:

实例

.text_line  
{  
clear:both;  
}

更多实例

为图像添加边框和边距并浮动到段落的右侧
让我们为图像添加边框和边距并浮动到段落的右侧

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title>学习猿地</title> 
<style>
    img 
    {
    	float:right;
    	border:1px dotted black;
    	margin:0px 0px 15px 20px;
    }
</style>
</head>

<body>
    <p>
    	在下面的段落中,图像将向右浮动。黑色虚线边界添加到图像。
    我们还添加了边缘的0 px的顶部和右侧 margin,15 px底部margin,和20 px左侧的margin的图像。使得文本远离图片:</p>
    <p>
    <img src="/attachments/cover/cover_css.png" width="95" height="84" />
    This is some text. This is some text. This is some text.
    This is some text. This is some text. This is some text.
    This is some text. This is some text. This is some text.
    This is some text. This is some text. This is some text.
    This is some text. This is some text. This is some text.
    This is some text. This is some text. This is some text.
    This is some text. This is some text. This is some text.
    This is some text. This is some text. This is some text.
    This is some text. This is some text. This is some text.
    This is some text. This is some text. This is some text.
    </p>
</body>

</html>

标题和图片向右侧浮动
让标题和图片向右侧浮动。

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title>学习猿地</title> 
<style>
    div
    {
    	float:right;
    	width:120px;
    	margin:0 0 15px 20px;
    	padding:15px;
    	border:1px solid black;
    	text-align:center;
    }
</style>
</head>

<body>
    <div>
        <img src="/attachments/cover/cover_css.png" width="95" height="84" /><br>
    CSS is fun!
    </div>
    <p>
    这是一些文本. 这是一些文本. 这是一些文本.
    这是一些文本. 这是一些文本. 这是一些文本.
    这是一些文本. 这是一些文本. 这是一些文本.
    这是一些文本. 这是一些文本. 这是一些文本.
    这是一些文本. 这是一些文本. 这是一些文本.
    这是一些文本. 这是一些文本. 这是一些文本.
    这是一些文本. 这是一些文本. 这是一些文本.
    这是一些文本. 这是一些文本. 这是一些文本.
    这是一些文本. 这是一些文本. 这是一些文本.
    这是一些文本. 这是一些文本. 这是一些文本.
    这是一些文本. 这是一些文本. 这是一些文本.
    这是一些文本. 这是一些文本. 这是一些文本.
    </p>
    
    <p>
    	在上面的段落中,div元素是120像素宽,它包含了图像。
    	div元素会向右浮动。
    	Margins 被添加到div使得文本远离div。
    	Borders和padding被添加到div框架的图片和标题中
    </p>
</body>

</html>

让段落的第一个字母浮动到左侧
改变样式,让段落的第一个字母浮动到左侧。

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title>学习猿地</title>
<style>
    span
    {
    	float:left;
    	width:1.2em;
    	font-size:400%;
    	font-family:algerian,courier;
    	line-height:80%;
    }
</style>
</head>

<body>
    <p>
    <span>这</span>是一些文本。
    这是一些文本。这是一些文本。
    这是一些文本。这是一些文本。这是一些文本。
    这是一些文本。这是一些文本。这是一些文本。
    这是一些文本。这是一些文本。这是一些文本。
    这是一些文本。这是一些文本。这是一些文本。
    这是一些文本。这是一些文本。这是一些文本。
    这是一些文本。这是一些文本。这是一些文本。
    </p>
    
    <p>
    在上面的段落中, 第一个字嵌入在span 元素中。
    这个 span 元素的宽度是当前字体大小的1.2倍。
    这个 span 元素是当前字体的400%(相当大), line-height 为80%。
    文字的字体为"Algerian"。
    </p>

</body>
</html>

创建一个没有表格的网页
使用 float 创建一个网页页眉、页脚、左边的内容和主要内容。

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title>学习猿地</title> 
<style>
    div.container
    {
    	width:100%;
    	margin:0px;
    	border:1px solid gray;
    	
    }
    div.header,div.footer
    {
    	padding:0.5em;
    	color:white;
    	background-color:gray;
    	clear:left;
    }
    h1.header
    {
    	padding:0;
    	margin:0;
    }
    div.left
    {
    	float:left;
    	width:160px;
    	margin:0;
    	padding:1em;
    }
    div.content
    {
    	margin-left:190px;
    	border-left:1px solid gray;
    	padding:1em;
    }
</style>
</head>
<body>

    <div class="container">
    <div class="header"><h1 class="header">学习猿地</h1></div>
    <div class="left"><p>“不要在必要的范围内增加解释任何事情所需的实体数量。”奥卡姆威廉(1285-1349)</p></div>
    <div class="content">
    <h2>免费的网页构建教程</h2>
    <p>A在 学习猿地 你会找到所有你需要的网络建设教程,
从基本的HTML和XHTML到高级XML、XSL、多媒体和WAP.</p>
    <p>学习猿地 - 成就自己的只需一套精品!</p></div>
    <div class="footer">版权:1999-2023年.</div>
    </div>

</body>
</html>

CSS 中所有的浮动属性

“CSS” 列中的数字表示不同的 CSS 版本(CSS1 或 CSS2)定义了该属性。

属性 描述 CSS
clear 指定不允许元素周围有浮动元素。 left
right
both
none
inherit
1
float 指定一个盒子(元素)是否可以浮动。 left
right
none
inherit
1
综合评分:9.9 评分 请对本文进行纠错,及学习过程中有困难疑惑可在此进行讨论