【玩转CSS】一文带你了解浮动(1),2024年最新算法+分布式+微服务

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新大数据全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上大数据知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip204888 (备注大数据)
img

正文

background-color: skyblue;
}

a {
display: block;
width: 200px;
height: 40px;
background-color: #444346;
text-decoration: none;
font-style: 14px;
color: #FFFFFF;
padding-left: 30px;
/* 让文字居中 */
line-height: 40px;

}

a:hover {
background-color: #FF6700;
}

.right img {
width: 900px;
height: 435px;
}


![在这里插入图片描述](https://img-blog.csdnimg.cn/49ad7f4600b942ee97df16064b376ebe.png)  
 案例二


![在这里插入图片描述](https://img-blog.csdnimg.cn/9cb7c14f167841449bebd5d8a13b25af.png)  
 这样的布局怎么做呢?



小米商城

li {
/* 清除小圆点 */
list-style: none;
}

.box {
width: 1226px;
height: 285px;
background-color: skyblue;
margin: 0 auto;
}

.box li {
width: 296px;
height: 285px;
background-color: purple;
float: left;
margin-right: 14px;
}

/* 层叠性 */
/* 这里必须写 .box .last,要注意权重的问题 */
.box .last {
margin-right: 0;
}

  • 1
  • 2
  • 3
  • 4

![在这里插入图片描述](https://img-blog.csdnimg.cn/9e3f32a9ccf94544984472b6d157c253.png)


案例三


![在这里插入图片描述](https://img-blog.csdnimg.cn/81a05aa25cc7414cb2e2fc4ebb68200f.png)


网页布局第二准则:先设置盒子大小,之后设置盒子的位置



小米商城

.left {
float: left;
width: 234px;
height: 615px;
background-color: pink;
}

.right {
width: 992px;
height: 615px;
background-color: skyblue;
float: left;
}

.right>div {
width: 234px;
height: 300px;
background-color: #00F5FF;
float: left;
margin-left: 14px;
margin-bottom: 14px;
}

左青龙
1
2
3
4
5
6
7
8

![在这里插入图片描述](https://img-blog.csdnimg.cn/bc1210878f084962bbe0f7c8adbc8d32.png)


## 常见网页布局


### 1. 三种布局


![在这里插入图片描述](https://img-blog.csdnimg.cn/14986c80dde84d55a5c5af71d499c3a9.png)  
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/9a486ed2729d4235bcfa5d975f8f6440.png)


我们来写一下第三种布局



常见网页布局

.top {
height: 50px;
background-color: cyan;
}

.banner {
width: 980px;
height: 150px;
background-color: cyan;
margin: 10px auto;
}

.box {
width: 980px;
height: 300px;
margin: 0 auto;
background-color: cyan;
}

li {
list-style: none;
}

.box li {
float: left;
width: 237px;
height: 300px;
background-color: pink;
margin-right: 10px;
}

.box .last {
margin-right: 0;
}

.footer {
height: 200px;
background-color: cyan;
margin-top: 10px;
}

top
  • 1
  • 2
  • 3
  • 4

![在这里插入图片描述](https://img-blog.csdnimg.cn/5c28f923f0eb44b198da8674943df860.png)


### 2. 浮动布局注意点


1. 浮动和标准流的父盒子搭配  
 先用标准流的父元素排列上下顺序,之后内部子元素采取浮动排列左右位置
2. 一个元素浮动了,理论上其余的兄弟元素也要浮动  
 一个盒子里面有多个子盒子,如果其中一个盒子浮动了,那么其他兄弟也应该浮动,以防止引起问题


浮动的盒子只会影响浮动盒子后面的标准流,不会影响前面的标准流


## 清除浮动


我们前面的浮动元素有一个标准流的父元素,它们有一个共同的特点,都是有高度的


但是,所有的父盒子都必须有高度吗?


理想中的状态,是让子盒子撑开父盒子,有多少子盒子,父盒子就有多高


但是不给父盒子高度会有问题吗?


### 1. 为什么要清除浮动?


由于父级盒子在很多情况下,不方便给高度,但是子盒子浮动又不占用位置,最后父级盒子高度为 **0** 时,就会影响下面的标准流盒子


![在这里插入图片描述](https://img-blog.csdnimg.cn/29582679664c4f8db22aebf599d5e22b.png)


* 由于浮动元素不再占用原文档流的位置,所以它会对后面的元素排版产生影响


### 2. 清除浮动本质


* 清除浮动的本质是清除浮动元素造成的影响
* 如果父级盒子本身有高度,则不需要清除浮动
* 清除浮动之后,父级盒子就会根据浮动的子盒子自动检测高度,父级有了高度,就不会影响下面的标准流盒子了


语法:



> 
> 选择器 { clear: 属性值; }
> 
> 
> 




| 属性值 | 描述 |
| --- | --- |
| **left** | 不允许左侧有浮动元素(清除左侧浮动的影响) |
| **right** | 不允许右侧有浮动元素(清除右侧浮动的影响) |
| **both** | 同时清除左右两侧浮动的影响 |


我们在实际开发中,几乎只用 `clear: both;`


清除浮动的策略是:闭合浮动


### 3. 清除浮动方法


1. 额外标签法也称为隔墙法,是 **W3C** 推荐的做法
2. 父级添加 overflow 属性
3. 父级添加 after 伪元素
4. 父级添加双伪元素


### 4. 清除浮动 —— 额外标签法


额外标签法会在浮动元素末尾添加一个空的标签,例如 `<div style="clear: both" ></div>`,或者其他标签(如 `<br/>` 等),空标签里面添加清除浮动样式


* 优点:通俗易懂,书写方便
* 缺点:添加许多无意义的标签,结构化比较差


注意:要求这个新的空标签必须是块级元素


实际工作可能会遇到,但是不常用



额外标签法

.one {
float: left;
width: 200px;
height: 200px;
background-color: skyblue;
}

.two {
float: left;
width: 200px;
height: 200px;
background-color: pink;
}

.footer {
height: 200px;
background-color: black;
}

.clear {
clear: both;
}

1
2

![在这里插入图片描述](https://img-blog.csdnimg.cn/e5c1a8ac76d94f8d8cd634337b0be073.png)


### 5. 清除浮动 —— 父级添加 overflow


可以给父级元素添加 overflow 属性,将其属性值设置伪 hidden、auto 或 scroll


* 优点:代码简洁
* 缺点:无法显示溢出的部分



父级添加overflow

.one {
float: left;
width: 200px;
height: 200px;
background-color: skyblue;
}

.two {
float: left;
width: 200px;
height: 200px;
background-color: pink;
}

.footer {
height: 200px;
background-color: black;
}

1
2

![在这里插入图片描述](https://img-blog.csdnimg.cn/5bc85d7151604597b442ea4b48787bc6.png)


### 6. 清除浮动 —— :after 伪元素法


:after 方式是额外标签法的升级版,也是给父元素添加(先不同理解



.clearfix:after {
content: “”;
display: block;
height: 0;
clear: both;
visibility: hidden;
}

.clearfix { /* IE6、7专有 */
*zoom: 1;
}


* 优点:没有增加标签,结构更简单
* 缺点:照顾低版本浏览器
* 代表网站:百度、淘宝网、网易等



伪元素清除浮动

.clearfix {
/* IE6、7专有 */
*zoom: 1;
}

.box {
width: 800px;
border: 1px solid blue;
margin: 0 auto;
}

.one {
float: left;
width: 200px;
height: 200px;
background-color: skyblue;
}

.two {
float: left;
width: 200px;
height: 200px;
background-color: pink;
}

.footer {
height: 200px;
background-color: black;
}

1
2

![在这里插入图片描述](https://img-blog.csdnimg.cn/8fe31a1f1ef048c6bdb3374272f4eb96.png)


### 7. 清除浮动 —— 双伪元素清除浮动


也是给父元素添加



.clearfix:before, clearfix:after {
content: “”;
display: table;
}
.clearfix:after {
clear: both;
}
.clearfix {
*zoom: 1;
}


* 优点:代码更简洁
* 缺点:照顾低版本浏览器
* 代表网站:小米、腾讯等



双伪元素清除浮动

.clearfix:after {
clear: both;
}

.clearfix {
*zoom: 1;
}

.box {
width: 800px;
border: 1px solid blue;
margin: 0 auto;
}

.one {
float: left;
width: 200px;
height: 200px;
background-color: skyblue;
}

.two {
float: left;
width: 200px;
height: 200px;
background-color: pink;
}

.footer {
height: 200px;
background-color: black;
}

1
2

### 8. 清除浮动总结


为什么需要清除浮动?


① 父级没高度  
 ② 子盒子浮动了  
 ③ 影响下面布局了,我们就应该清除浮动了




| 清除浮动的方式 | 优点 | 缺点 |
| --- | --- | --- |
| 额外标签法(隔墙法) | 通俗易懂,书写方便 | 添加许多无意义的标签,结构化较差 |
| 父级 `overflow: hidden;` | 书写简单 | 溢出隐藏 |
| 父级 **after** 伪元素 | 结构语义化正确 | 由于 **IE6-7** 不支持 **:after**,兼容性问题 |
| 父级双伪元素 | 结构语义化正确 | 由于 **IE6-7** 不支持 **:after**,兼容性问题 |


## PS 切图


**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注大数据)**
![img](https://img-blog.csdnimg.cn/img_convert/094a55f437bbd0af69c6a55103951d76.png)

**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**

e">1</div>
        <div class="two">2</div>
    </div>
    <div class="footer"></div>
</body>

</html>

8. 清除浮动总结

为什么需要清除浮动?

① 父级没高度
② 子盒子浮动了
③ 影响下面布局了,我们就应该清除浮动了

清除浮动的方式优点缺点
额外标签法(隔墙法)通俗易懂,书写方便添加许多无意义的标签,结构化较差
父级 overflow: hidden;书写简单溢出隐藏
父级 after 伪元素结构语义化正确由于 IE6-7 不支持 :after,兼容性问题
父级双伪元素结构语义化正确由于 IE6-7 不支持 :after,兼容性问题

PS 切图

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip204888 (备注大数据)
[外链图片转存中…(img-oJzsnl1E-1713361771319)]

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值