理解CSS Floats
原作者:Steven Bradley
发表时间:2009年10月15日
原文链接:http://www.vanseodesign.com/css/understanding-css-floats/
翻译:子毅 --------- 将JavaScript进行到底
有效地使用CSS浮动非常容易使人迷惑,并且这可能也是绊倒许多新手的事情之一。然而,一旦你学会了控制浮动元素,它将为你的设计开辟一个全新的世界,使得开发布局更简单。
只要你理解了几个关键点,浮动真的没有想象的那样难。
什么是浮动
浮动属性有三个值:none ,这是个默认值,left 和right。正如你可能希望的,它没有center值。在css中,水平居中通过margins来实现。
在直接包含div中,浮动元素会尽可能地向左或向右移动。取决于被声明浮动元素所在的可用宽度,其他元素可能坐落在被浮动元素的下一行,或者流动到其周围
Floats和Positioning的区别
怎样有效地使用Floats
<p>
<img class="alignleft" src="" alt="" width="" height="" />
Lots of text here. Enough to wrap around the image.
</p>
img.alignleft {float: left; margin: 0 10px 10px 0}
在上面的代码中,浮动元素和围绕文本均被包含在一个段落中。
多栏布局
<div id="wrapper"><div id="left-column"></div><div id="right-column"></div>
</div>
#left-column {float: left}
#right-column {float: left}
将上面的两个div元素均向左浮动,你就可以得到两栏。当然,你还需要保障两个div的宽度可以适应包含div的宽度。另一种选择是,你可以将右边的栏向右浮动,但是我通常倾向于向相同的方向浮动。
清除浮动
包含浮动(Containing Floats)
<div class="clear"></div>
这将会工作得很好,假如在浮动元素下允许添加一些额外的空间。一些浏览器可能会为这个空div添加一些默认的height, margin, padding等
Floats的问题
总结
- 浮动首先在正常文档流中放置,然后在包含元素内尽可能地移到左边或右边,并从正常文档流中清除。
- 只要水平方向上有足够的空间,未浮动元素可以在浮动元素周围围绕。而如果没有足够的空间,它们将会在浮动元素下面放置
- 浮动和定位元素是不同的,它们的表现方式也不同。你可以应用两者到同一个元素
- 当你想使文档在浮动元素周围围绕,或者想创建多栏布局,你可以使用浮动
- 当你想使得一个元素在浮动元素下面,或者阻止包含元素折叠,记得清除浮动
- 为IE找到合适的方法来解决几个常见的问题
- CSS浮动理论:你需要知道的东西
- 关于浮动的一切
- Floatorial
理解CSS Floats相关推荐
- 深入理解CSS margin折叠
什么是margin折叠? W3C对于外边距叠加的定义: In CSS, the adjoining margins of two or more boxes (which might or might ...
- 一个人做饭简单食谱_如何通过两个简单的寿司布局食谱来理解CSS浮动
一个人做饭简单食谱 by Anabella Spinelli 通过安娜贝拉·斯皮内利(Anabella Spinelli) 如何通过两个简单的寿司布局食谱来理解CSS浮动 (How to unders ...
- 理解 CSS 布局和块级格式上下文
本文的目的是介绍一些概念来帮你增强 CSS 码力.如标题所示这篇文章主要是讲块级格式上下文BFCBlock Formatting Context.你可能没听过这个术语但只要你曾经使用 过CSS 布局你 ...
- [转]深入理解CSS中的层叠上下文和层叠顺序
http://www.zhangxinxu.com/wordpress/2016/01/understand-css-stacking-context-order-z-index/ 零.世间的道理都是 ...
- 深入理解CSS盒模型 - 程序猿的程 - 博客园
深入理解CSS盒模型 本文是学习中传思客在慕课网开的课程<前端跳槽面试必备技巧>的学习笔记.课程地址:https://coding.imooc.com/class/evaluation/1 ...
- 转HTML+CSS总结/深入理解CSS盒子模型
原文地址:http://www.chinaz.com/design/2010/1229/151993.shtml 前言:前阵子在做一个项目时,在页面布局方面遇到了一点小问题,于是上stackoverf ...
- 谁动了我的选择器?深入理解CSS选择器优先级
深入理解CSS选择器优先级
- 一个div 上下两行_web前端工程师如何理解 CSS 布局和块级格式化上下文
CSS是web前端中的重要内容,很多初学者在学习CSS时都会遇到各种各样的问题,今天就给大家分享web前端开发如何理解CSS不惧和块级格式化上下文.也许你从未听说过这个术语,但是如果你曾经用 CSS ...
- 进一步理解CSS浮动与清除浮动
本文主要探讨两个问题: 为什么CSS设置浮动会引起父元素塌陷 为什么设置clear:both能清除浮动,并撑开父元素. 起因 CSS的浮动,算是我在写网页时用的最多的属性之一.但要说我对浮动的了解程度 ...
最新文章
- 为什么选择图形数据库,为什么选择Neo4j?
- Access中字段类型及修改字段类型的SQL语句
- vue v-for指令
- 多除了1次100的FM BAPI_CURRENCY_CONV_TO_INTERN_9
- 鸿蒙WLAN模组联网+解决在Visual Studio Code不能更改Linux文件的问题
- php评论倒序 zblog_zblogPHP评论链接加密并美化跳转的完美方法
- igs无法分配驱动器映射表_左神算法基础:哈希函数和哈希表
- Spring Boot + Thymeleaf + Activiti 快速开发平台项目,附源码!
- 页面可用性之浏览器默认字体与CSS 中文字体
- 【优化预测】基于matlab天牛须算法优化BP神经网络预测【含Matlab源码 1316期】
- GNS3环境搭建与测验实战图文详解
- 计算机毕业论文性能测试怎么写,计算机毕业论文撰写技巧
- 【Python项目】贪吃蛇小游戏
- C# 脚本化实现方式探究
- 网站入侵工具之wscan使用详解
- 魔力宝贝服务器ip修改,魔力宝贝修改代码一览表
- 关于物联网远程控制技术,你了解的有多少?
- 30V N通道 MOS管SOT23-6封装 安森德ASDM6802ZC替代AOS万代AO6802方案
- C# HttpWebRequest 必须使用适当的属性或方法修改“Host”标头;必须使用适当的属性或方法修改“Date”标头。
- 校园超市,百货超市小程序,手把手带你开发一款微信商城小程序,云开发+cms+数据库+js+css+微信小程序
热门文章
- 制作Win10系统U盘,安装纯净版Win10系统教程
- 剖析nsq消息队列(一) 简介及去中心化实现原理
- curl 增加header_curl增加多个头的方法
- EXCELt添加单引号
- 云服务器上传文件怎么这么慢,百度云上传速度太慢怎么回事_百度云网盘上传速度太慢怎么解决-win7之家...
- pygame.USEREVENT创建多个用户事件
- 一文教你快速学习搭建属于自己的数据指标体系
- 西安电子科大计算机考研调剂,西安电子科技大学电子工程学院2020考研调剂信息...
- 开源H5选择器UI组件——Picker.js
- CppCheck静态代码检查配置(命令行方式或在VS中使用)