您现在的位置是:网站首页> 编程资料编程资料
html+css 清除浮动的相关技巧心得html/css中float浮动的用法实例详解HTML5 CSS3实现七彩变换的天空中白云漂浮动画效果源码Html+CSS浮动的广告条实现分解基于jQuery+CSS实现的浮动html菜单效果分享代码HTML5+CSS设置浮动却没有动反而在中间且错行的问题
2021-09-05
804人已围观
简介 下面小编就为大家带来一篇html+css 清除浮动的相关技巧心得。小编觉得挺不错的,现在分享给大家,给大家一个参考
浮动会使当前标签产生向上浮的效果,同时会影响到前后标签、父级标签的位置及 width height 属性。而且同样的代码,在各种浏览器中显示效果也有可能不相同,这样让清除浮动更难了。解决浮动引起的问题有多种方法,但有些方法在浏览器兼容性方面还有问题。
下面总结8种清除浮动的方法(测试已通过 ie chrome firefox opera,后面三种方法只做了解就可以了):
1,父级div定义 height
- <style type="text/css">
- .div1{background:#000080;border:1px solid red;/*解决代码*/height:200px;}
- .div2{background:#800080;border:1px solid red;height:100px;margin-top:10px}
- .left{float:left;width:20%;height:200px;background:#DDD}
- .right{float:right;width:30%;height:80px;background:#DDD}
- style>
- <div class="div1">
- <div class="left">Leftdiv>
- <div class="right">Rightdiv>
- div>
- <div class="div2">
- div2
- div>
原理:父级div手动定义height,就解决了父级div无法自动获取到高度的问题。
优点:简单、代码少、容易掌握
缺点:只适合高度固定的布局,要给出精确的高度,如果高度和父级div不一样时,会产生问题
建议:不推荐使用,只建议高度固定的布局时使用
----------
2,结尾处加空div标签 clear:both
- <style type="text/css">
- .div1{background:#000080;border:1px solid red}
- .div2{background:#800080;border:1px solid red;height:100px;margin-top:10px}
- .left{float:left;width:20%;height:200px;background:#DDD}
- .right{float:right;width:30%;height:80px;background:#DDD}
- /*清除浮动代码*/
- .clearfloat{clear:both}
- style>
- <div class="div1">
- <div class="left">Leftdiv>
- <div class="right">Rightdiv>
- <div class="clearfloat">div>
- div>
- <div class="div2">
- div2
- div>
原理:添加一个空div,利用css提高的clear:both清除浮动,让父级div能自动获取到高度
优点:简单、代码少、浏览器支持好、不容易出现怪问题
缺点:不少初学者不理解原理;如果页面浮动布局多,就要增加很多空div,让人感觉很不好
建议:不推荐使用,但此方法是以前主要使用的一种清除浮动方法
----------
3,父级div定义 伪类:after 和 zoom (大多是用这种)
- <style type="text/css">
- .div1{background:#000080;border:1px solid red;}
- .div2{background:#800080;border:1px solid red;height:100px;margin-top:10px}
- .left{float:left;width:20%;height:200px;background:#DDD}
- .right{float:right;width:30%;height:80px;background:#DDD}
- /*清除浮动代码*/
- .clearfloat:after{display:block;clear:both;content:"";visibility:hidden;height:0}
- .clearfloat{zoom:1}
- style>
- <div class="div1 clearfloat">
- <div class="left">Leftdiv>
- <div class="right">Rightdiv>
- div>
- <div class="div2">
- div2
- div>
原理:IE8以上和非IE浏览器才支持:after,原理和方法2有点类似,zoom(IE转有属性)可解决ie6,ie7浮动问题
优点:浏览器支持好、不容易出现怪问题(目前:大型网站都有使用,如:腾迅,网易,新浪等等)
缺点:代码多、不少初学者不理解原理,要两句代码结合使用才能让主流浏览器都支持。
建议:推荐使用,建议定义公共类,以减少CSS代码。
-------
4,父级div定义 overflow:hidden
- <style type="text/css">
- .div1{background:#000080;border:1px solid red;/*解决代码*/width:98%;overflow:hidden}
- .div2{background:#800080;border:1px solid red;height:100px;margin-top:10px;width:98%}
- .left{float:left;width:20%;height:200px;background:#DDD}
- .right{float:right;width:30%;height:80px;background:#DDD}
- style>
- <div class="div1">
- <div class="left">Leftdiv>
- <div class="right">Rightdiv>
- div>
- <div class="div2">
- div2
- div>
原理:必须定义width或zoom:1,同时不能定义height,使用overflow:hidden时,浏览器会自动检查浮动区域的高度
优点:简单、代码少、浏览器支持好
缺点:不能和position配合使用,因为超出的尺寸的会被隐藏。
建议:只推荐没有使用position或对overflow:hidden理解比较深的朋友使用。
---------
5,父级div定义 overflow:auto
- <style type="text/css">
- .div1{background:#000080;border:1px solid red;/*解决代码*/width:98%;overflow:auto}
- .div2{background:#800080;border:1px solid red;height:100px;margin-top:10px;width:98%}
- .left{float:left;width:20%;height:200px;background:#DDD}
- .right{float:right;width:30%;height:80px;background:#DDD}
- style>
- <div class="div1">
- <div class="left">Leftdiv>
- <div class="right">Rightdiv>
- div>
- <div class="div2">
- div2
- div>
原理:必须定义width或zoom:1,同时不能定义height,使用overflow:auto时,浏览器会自动检查浮动区域的高度
优点:简单、代码少、浏览器支持好
缺点:内部宽高超过父级div时,会出现滚动条。
建议:不推荐使用,如果你需要出现滚动条或者确保你的代码不会出现滚动条就使用吧。
---------
6,父级div 也一起浮动
本站声明:
1、本站所有资源均来源于互联网,不保证100%完整、不提供任何技术支持;
2、本站所发布的文章以及附件仅限用于学习和研究目的;不得将用于商业或者非法用途;否则由此产生的法律后果,本站概不负责!
相关内容
- 你应该知道的3个CSS技巧css优化技巧自己实践心得10个CSS简写/优化技巧整理CSS中关于居中的小技巧个人小结css(html)背景图优化合并技巧详解CSS Hack技术介绍及常用的Hack技巧集锦29个常用的CSS小技巧汇总淘宝店铺导航装修怎么编辑?淘宝新旺铺导航CSS代码使用修改技巧10个必备的CSS技巧总结CSS中的inherit使用技巧小结CSS中行高line-height属性的一些使用技巧
- css使用flexbox布局容器内多元素水平居中利用CSS3的flexbox实现水平垂直居中与三列等高布局Flexbox制作CSS布局实现水平垂直居中的简单实例CSS3的Flexbox骰子布局的实现及问题讲解基础的CSS3弹性盒Flexbox布局使用实例CSS3的Flexbox布局的简明入门指南浅谈最全面的水平垂直居中方案与flexbox布局
- 在网页标题栏上和收藏夹显示网站logo的实现方法学习DIV+CSS网页布局之混合布局学习DIV+CSS网页布局之三列布局学习DIV+CSS网页布局之两列布局学习DIV+CSS网页布局之一列布局Dreamweaver编辑网页预览的时候显示乱码该怎么办?Dreamweaver怎么给网页添加Flash影片?
- 可自定义箭头样式的CSS3气泡提示框HTML中利用div+CSS实现简单的箭头图标的代码css 11种方法实现一个tips带有描边的小箭头css实现带箭头和圆点的轮播CSS3制作可自定义配置箭头的气泡提示框效果源码基于CSS实现带阴影和小箭头的黑色风格下拉菜单效果纯CSS3实现漂亮的input输入框动画样式库(Text input love)CSS实现让同一行文字和输入框对齐的方法利用HTML、CSS 实现带表情的评论框的制作教程CSS实现带箭头的提示框效果【示例代码】
- 6种非常炫酷的CSS3按钮边框动画特效纯CSS3实现的鼠标悬停文字线条边框动画特效源码CSS3基于SVG实现的多种鼠标滑过边框线条动画特效源码CSS3实现的鼠标滑过边框线条动画特效源码纯css3实现的鼠标滑过圆形边框动画特效源码jQuery+CSS3实现响应式鼠标悬停图片边框炫酷动画特效源码纯css3基于svg实现鼠标经过按钮边框线条动画特效源码CSS3实现6种炫酷的按钮边框动画特效源码利用SVG和CSS3来实现一个炫酷的边框动画CSS3实现的图片边框动画特效源码使用纯 CSS 创作一个渐变色动画边框
- CSS3制作炫酷带方向感应的鼠标滑过图片3D动画纯CSS3实现鼠标滑过按钮动画第二节CSS实现鼠标滑过鼠标点击代码写法纯CSS3实现8组超炫酷鼠标滑过图片动画css实现鼠标滑过五角星高亮效果 纯CSS实现鼠标滑过显示子菜单的二级菜单效果CSS实现鼠标滑过文字弹出一段说明文字无JS代码纯css实现鼠标滑过弹出层效果CSS控制当鼠标滑过时更换图片的效果css实现鼠标滑过改变文字(中文变英文)使用css的filter写鼠标滑过效果的实现示例
- 纯CSS3实现8组超炫酷鼠标滑过图片动画纯CSS3实现鼠标滑过按钮动画第二节CSS实现鼠标滑过鼠标点击代码写法CSS3制作炫酷带方向感应的鼠标滑过图片3D动画css实现鼠标滑过五角星高亮效果 纯CSS实现鼠标滑过显示子菜单的二级菜单效果CSS实现鼠标滑过文字弹出一段说明文字无JS代码纯css实现鼠标滑过弹出层效果CSS控制当鼠标滑过时更换图片的效果css实现鼠标滑过改变文字(中文变英文)使用css的filter写鼠标滑过效果的实现示例
- 让DIV水平垂直居中的两种完美方法推荐DIV或者DIV里面的图片水平与垂直居中的方法将一个绝对定位的div水平垂直居中对齐使用绝对定位+负外边距让DIV层水平垂直居中页面DIV以及图片水平垂直居中兼容多种浏览器DIV水平垂直居中css实现代码 div水平垂直居中的完美解决方案css3 flex实现div内容水平垂直居中的几种方法
- css制作黑色经典导航下拉菜单纯CSS实现下拉菜单的示例代码CSS3模拟动画下拉菜单效果CSS导航栏及弹窗示例代码CSS下拉菜单简单制作教程 你值得拥有的CSS下拉菜单效果基于CSS实现的4级下拉菜单效果代码CSS实现的灰色下拉菜单效果代码纯CSS实现的大型下拉菜单的示例代码
- 学习DIV+CSS网页布局之混合布局css三种方法实现div在浏览器水平居中一个div在浏览器水平居中的实现方法div+CSS制作类似微信对话气泡效果的实例总结EXCEL表格中的#DIV/0!等符号怎么全部当计算?让DIV水平垂直居中的两种完美方法推荐学习DIV+CSS网页布局之三列布局学习DIV+CSS网页布局之两列布局学习DIV+CSS网页布局之一列布局使用div+CSS将页脚始终控制在页面最下方的方法Div+CSS对HTML的table表格定位用法实例
点击排行
本栏推荐
