博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
浮动的艺术下
阅读量:5287 次
发布时间:2019-06-14

本文共 965 字,大约阅读时间需要 3 分钟。

    浮动是css中比较难理解的一个属性;"浮动的艺术"上篇介绍浮动的基本用法和原理, 这里主要介绍浮动(float)带来的问题和解决的方案, 这部分比较简单。

    1 带来的问题和解决

    (1) 可能会影响父类元素的大小;

     前提:父类没有设置height width属性, 子类使用了float;

     后果:父级盒子没法撑开;

  

 

运行结果如下:

  分析: 可以看到上面blue的盒子是在box1的外面,box1浮动之后,top盒子(父盒子)就没法撑开;

  那么问题怎么处理?很简单

  方法1:给父类一个width height就可以了;不用怀疑,这是最好的处理方法,没有之一。原因:盒子有了大小,不管里面的内容浮动不浮动,width height都是在的;  建议给每一个盒子设置width height属性值,避免这情况发生。

  方法2:因为有些书籍讲到这个方法,所以说一下. "使用取消浮动的方法,注意取消float的位置"; 

  将上面代码里面body改成:

box1

   原来基础上只是加上 <div style="clear:both"></div>这句;  运行结果为:

 

    分析:很明显这是我们想要的结果;这里说明原因:我们知道float会脱离文档流进入平面空间,而后面的box2取消了float,意味着box2要换行和box1底边对齐显示; 很明显box2是盒子top(父类盒子)的内容,而且没有浮动,此时父类盒子必须要将他包围起来。也就把前面的box1一起包起来了;问题解决

   方法3:在top盒子样式里面加上 overflow:hidden,也可以解决。原因:w3 是这样介绍overflow属性的:overflow 属性设置当元素的内容溢出其区域时发生的事情。属性值hidden:内容会被修剪,但是浏览器不会显示供查看内容的滚动条。

     ps: float带来的问题主要的就是上面这个。其他什么影响背景, 边框, padding,margin,这个明白那些都是一个意思;

     附上: " 浮动的艺术" 讲到浮动的基本用法和float的原理;

转载于:https://www.cnblogs.com/huang-1995/p/5528807.html

你可能感兴趣的文章
市场说 Web前端工程师的3项素质
查看>>
[笔记] 快速乘
查看>>
HDU 2717.Catch That Cow
查看>>
CentOS6.5x64采用静默模式安装64位oracle11g
查看>>
http://edu.manew.com/ ,蛮牛教育(很少免费),主要是unty3D和大数据方向。适合扫盲...
查看>>
Python操作文件夹
查看>>
DOM3 textInput事件
查看>>
[转]栅格规范制作
查看>>
Codeforces --- 982C Cut 'em all! DFS加贪心
查看>>
SQLServer之修改PRIMARY KEY
查看>>
Settings.settings
查看>>
JS pop push unshift shift的作用与区别
查看>>
windows下手动安装composer
查看>>
209.Minimum Size Subarray Sum
查看>>
Linux / mysql: is it safe to copy mysql db files with cp command from one db to another?
查看>>
java this
查看>>
Target runtime com.genuitec.runtime.generic.jee50 is not defined工程错误
查看>>
数学笔记
查看>>
计数器(牛客网)
查看>>
李连杰放弃中国国籍的原因
查看>>