您现在的位置是:网站首页> 编程资料编程资料
深入了解float与inline-blockCSS Transition通过改变Height实现展开收起元素从QQtabBar看css命名规范BEM的详细介绍css实现两栏布局,左侧固定宽,右侧自适应的多种方法CSS 实现Chrome标签栏的技巧CSS实现两列布局的N种方法CSS实现隐藏搜索框功能(动画正反向序列)CSS3中Animation实现简单的手指点击动画的示例详解CSS中的特指度和层叠问题详解overflow:hidden的作用(溢出隐藏、清除浮动、解决外边距塌陷)关于CSS浮动与取消浮动的问题
2021-09-05
946人已围观
简介 这篇文章主要介绍了深入了解float与inline-block,分别从兼容性,对父元素的影响等方面进行了分析,推荐给小伙伴参考下
最近工作比较轻松,所以一直在写自己的canvas库..也没啥好知识点写博客,停滞了有2个月了吧.故今天决心花些时间来写一篇css的博文,刚好最近项目写界面的时候碰到这2个家伙...所以就和大家一起来半深入的理解下
首先是兼容性
float的话完全不用担心什么浏览器都能兼容,比较是一个很老的属性了.
inline-block则在IE8以上(包括8)才能使用,查了下资料,其实IE5.5的时候就已经有inline-block了,只是实现不一样,所以想要兼容低版本的IE就只能用额外的代码
display:inline; //强行不换行
zoom:1; // 用来触发hasLayout,有兴趣深入理解的猴子可自行了解
其次是对父亲元素的影响
inline-block的话,没什么好说的,唯一要注意的就是每个设置了inline-block的元素直接都会有空隙,可以在父亲元素里设置
font-size: 0;
来消除,不过后果是什么大家都知道,不过我依然觉得这是最简单暴力的方法,当然也有其他方法,还是请自行查找
float的话,设置了该属性的元素会脱离文本流,也就是说和position:absolute一样,不过对于一样设置了该属性的元素则不会.所以带来的问题就是父亲元素并不会随着子元素的大小改变长宽,但是如果父亲元素设置为inline-block的话,则长宽会随着子元素变化(前提是浏览器兼容inline-block,如果兼容的话我就直接用inline-block了~).
所以在不给父亲元素设置inline-block属性的时候就需要清除浮动.
在父亲元素结束前最后一个浮动元素后.clear:both下(原理大概就是用一个有文本流的元素定位父亲元素的大小),这样父亲元素的高度就会随浮动元素改变
最后是一点其他的小区别
基线:float和inline-block的基线不一样
float的基线是浮动元素紧贴顶部
inline-block的基线是默认的基线,所以比较灵活可以配合vertical-align.
最后的最后...就个人而言还是喜欢用inline-block多点,用float的地方多数可以用inline-block来代替,唯有当要围绕某个元素时float是唯一的解决方法
相关内容
- 29个常用的CSS小技巧汇总CSS网页布局25个实用小技巧25条div+css编程提醒及小技巧整理 CSS小技巧:为不同类型的文件设置不同的链接样式书写CSS的5个小技巧让你的样式更规范适合新手的CSS网页布局小技巧整理CSS中关于居中的小技巧个人小结三个很特别的CSS小技巧分享
- 利用CSS span实现双语菜单的方法教程CSS Transition通过改变Height实现展开收起元素从QQtabBar看css命名规范BEM的详细介绍css实现两栏布局,左侧固定宽,右侧自适应的多种方法CSS 实现Chrome标签栏的技巧CSS实现两列布局的N种方法CSS实现隐藏搜索框功能(动画正反向序列)CSS3中Animation实现简单的手指点击动画的示例详解CSS中的特指度和层叠问题详解overflow:hidden的作用(溢出隐藏、清除浮动、解决外边距塌陷)关于CSS浮动与取消浮动的问题
- css实现文本溢出显示省略号纯CSS定制文本省略的方法大全CSS实现单行、多行文本溢出显示省略号的实现方法CSS实现限制字数功能当对象内文本溢出时显示省略标记用css截取字符实现文字自动截断隐藏溢出文本css多行文本溢出时出现省略号的示例
- 使用CSS3实现圆角,阴影,透明CSS3绘制圆角矩形的简单示例利用CSS3实现圆角的outline效果的教程CSS3实现圆角、阴影、透明效果并兼容各大浏览器纯CSS3实现圆角效果(含IE兼容解决方法)css3圆角边框和边框阴影示例纯CSS3制作的圆角渐变表格效果(无js)用js实现css3效果的圆角方法CSS3圆角和渐变2种常用功能详解
- 纯css3实现的鼠标悬停动画按钮纯CSS3实现的鼠标悬停图标旋转导航动画特效源码纯css3实现的鼠标悬停背景翻转动画导航特效源码一款纯CSS3实现的鼠标悬停动画按钮集合特效源码 HTML5+CSS3实现的鼠标悬停动画菜单按钮特效源码 一款纯css3实现的鼠标悬停动画按钮一款基于CSS3实现的鼠标悬停图片动画及多种文字动画效果源码31款纯css3实现的鼠标悬停动画效果源码纯CSS3实现的鼠标悬停图片文字动画效果源码CSS3鼠标悬停动画显示文字特效源码
- css3实现3D色子翻转特效CSS实现卡片3D翻转效果的示例代码一款基于css3麻将筛子3D翻转特效的实例教程css3的图形3d翻转效果应用示例简单几步用纯CSS3实现3D翻转效果
- CSS中使用expression表达式CSS expression判断表达式设置input样式CSS expression在Chrome的问题优化浏览器渲染 避免CSS expressionsCSS中使用expression完美设置页面最小宽度(兼容ie)css expression使用概述及其优缺点介绍CSS行为expression轻松实现IE6无抖动固定定位CSS表达式(expression)解决IE6 position:fixed无效问题
- CSS3 实现侧边栏展开收起动画CSS3超酷环形动画菜单其子菜单可环绕展开CSS3华丽的Tab菜单当鼠标滑过时会出现展开动画纯CSS3实现的横向和纵向鼠标滑过手风琴自动展开效果基于jquery+css3实现左右摇摆可滑动展开折叠圆形导航菜单CSS3+HTML5+JS 实现一个块的收缩与展开动画效果
- 三个很特别的CSS小技巧分享CSS网页布局25个实用小技巧25条div+css编程提醒及小技巧整理 CSS小技巧:为不同类型的文件设置不同的链接样式书写CSS的5个小技巧让你的样式更规范适合新手的CSS网页布局小技巧整理CSS中关于居中的小技巧个人小结29个常用的CSS小技巧汇总
- css3选择器基本介绍CSS3 选择器 基本选择器介绍CSS3 选择器 属性选择器介绍对CSS3选择器的研究(详解)