清除浮动(clearfix hack)

简介: 清除浮动(clearfix hack)在使用浮动的时候经常会遇到一个古怪的事情:img { float: right;}不......这个图片比包含它的元素还高, 而且它是浮动的,于是它就溢出到了容器外面!见证奇迹的时刻到了!有一种比较丑陋的方法可以解决这个问题,它叫做清除浮动(clearfix hack).让我们加入一些新的CSS样式:.clearfix { overflow: auto;}现在再看看发生了什么:好多了!这个可以在现代浏览器上工作。

清除浮动(clearfix hack)

在使用浮动的时候经常会遇到一个古怪的事情:

img {
  float: right;
}
<div> An Image

不......这个图片比包含它的元素还高, 而且它是浮动的,于是它就溢出到了容器外面!

见证奇迹的时刻到了!有一种比较丑陋的方法可以解决这个问题,它叫做清除浮动(clearfix hack).

让我们加入一些新的CSS样式:

.clearfix {
  overflow: auto;
}

现在再看看发生了什么:

<div class="clearfix"> An Image

好多了!

这个可以在现代浏览器上工作。如果你想要支持IE6,你就需要再加入如下样式:

.clearfix {
  overflow: auto;
  zoom: 1;
}

有些独特的浏览器需要“额外的关照”。清除浮动这谭水很深很深,但是这个简单的解决方案已经可以在今天所有的主要浏览器上工作。

目录
相关文章
|
前端开发 JavaScript API
使用 JavaScript 检测系统主题色
使用 JavaScript 检测系统主题色
650 0
|
NoSQL Linux Redis
在Windows下使用msys2编译最新版的Redis
在Windows下使用msys2编译最新版的Redis
1600 0
|
3月前
|
人工智能 程序员 API
Anthropic Cookbook:开发者可以参考的Claude AI高效开发指南
作为配套资源的Anthropic Cookbook开源项目,更是凭借其丰富的代码示例和实用指南,在GitHub上获得了18k+颗星的高度认可。
115 7
Anthropic Cookbook:开发者可以参考的Claude AI高效开发指南
|
数据可视化 前端开发 Java
Java中的图形用户界面开发
Java中的图形用户界面开发
|
12月前
|
JavaScript 前端开发 算法
前端优化之超大数组更新:深入分析Vue/React/Svelte的更新渲染策略
本文对比了 Vue、React 和 Svelte 在数组渲染方面的实现方式和优缺点,探讨了它们与直接操作 DOM 的差异及 Web Components 的实现方式。Vue 通过响应式系统自动管理数据变化,React 利用虚拟 DOM 和 `diffing` 算法优化更新,Svelte 通过编译时优化提升性能。文章还介绍了数组更新的优化策略,如使用 `key`、分片渲染、虚拟滚动等,帮助开发者在处理大型数组时提升性能。总结指出,选择合适的框架应根据项目复杂度和性能需求来决定。
444 2
|
12月前
|
JavaScript 前端开发 UED
为什么在 Vue3.0 采用了 Proxy,抛弃了 Object.defineProperty
Vue 3.0 采用 Proxy 替代 Object.defineProperty,主要因为 Proxy 提供了更全面、高效的数据拦截能力,支持对更多操作进行拦截和自定义处理,同时减少了对对象的限制,提升了框架性能和开发体验。
|
开发者 Python
软件开发中的 DRY、KISS 和 SOLID 原则
**软件开发中的DRY、KISS和SOLID原则概览** - **DRY (Don&#39;t Repeat Yourself)**: 避免代码重复,确保每项知识在系统中有唯一表示,减少冗余,提高可维护性。例如,通过封装重复逻辑到函数或类。
289 0
|
JavaScript Ubuntu 应用服务中间件
nginx扩展 OpenResty 实现防cc攻击教程
使用OpenResty实现CC攻击防护,包括两个主要步骤:限制请求速度和JS验证。首先,安装依赖(RHEL/CentOS需安装readline-devel, pcre-devel, openssl-devel,Ubuntu需安装libreadline-dev等)。然后,安装Luajit和OpenResty。在Nginx配置中,创建`lua`共享字典并设置`content_by_lua_file`调用lua脚本。lua脚本检查请求频率,超过限制则返回503,否则增加计数。同时,通过JS验证,生成随机码并重定向用户,用户需携带正确验证码请求才能访问。
388 0
|
算法 Linux 编译器
【Linux 第三方库】 linux 交叉编译fontconfig,freetype,libxml2,uuid
【Linux 第三方库】 linux 交叉编译fontconfig,freetype,libxml2,uuid
636 0
|
弹性计算 关系型数据库 Apache
手把手教你使用阿里云服务器搭建个人博客
这是我第一次搭建个人博客网站,总体上来说还是非常顺利的,主要四个步骤,首先创建阿里云服务器,其次创建云数据库实例,再次阿里云服务器链接云数据库,最后安装WordPress。四步轻松就可以搭建个人博客网站啦,之前搭建博客起码需要一两周的时间,这次建站只花费了我1个小时就完成啦。
4054 12