- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个古老的问题,就是div
包装了两列布局。我的侧边栏处于浮动状态,因此我的容器div
无法包装内容和侧边栏。
<div id="container">
<div id="content"></div>
<div id="sidebar"></div>
</div>
<br clear="all"/>
overflow:auto
overflow:hidden
<br clear="all"/>
解决方案,该解决方案有些麻烦。
overflow:auto
给我带来讨厌的滚动条,并且
overflow:hidden
必须肯定有副作用。
最佳答案
根据所产生的设计,以下每个clearfix CSS解决方案都有其自己的优点。
该clearfix确实具有有用的应用程序,但也已被用作hack。在使用clearfix之前,也许这些现代的CSS解决方案可能会有用:
css flexbox
css grid
现代Clearfix解决方案
带有overflow: auto;
的容器
清除浮动元素的最简单方法是在包含元素上使用样式overflow: auto
。该解决方案适用于所有现代浏览器。
<div style="overflow: auto;">
<img
style="float: right;"
src="path/to/floated-element.png"
width="500"
height="500"
>
<p>Your content here…</p>
</div>
hidden
会裁剪位于包含元素之外的所有内容。
img
标记,但可以是任何html元素。
display: block
(而不是
display: table
)可使页边距正确折叠。
.container::after {
content: "";
display: block;
clear: both;
}
zoom
和
::before
属性/值,而只需使用:
.container::after {
content: "";
display: table;
clear: both;
}
.container::before, .container::after {
content: "";
display: table;
}
.container::after {
clear: both;
}
.container {
zoom: 1;
}
width: 100%
。
.container {
overflow: hidden;
display: inline-block;
display: block;
}
display
属性为IE设置“ hasLayout”外,其他属性也可以用于
triggering "hasLayout" for an element。
.container {
overflow: hidden;
zoom: 1;
display: block;
}
overflow
属性清除浮点数的另一种方法是使用
underscore hack。 IE将应用带下划线前缀的值,其他浏览器则不会。
zoom
属性在IE中触发
hasLayout:
.container {
overflow: hidden;
_overflow: visible; /* for IE */
_zoom: 1; /* for IE */
}
<br style="clear: both" /> <!-- So dirty! -->
<br style="clear: both" />
标签。
关于css - 我可以使用哪些“clearfix”方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40494292/
960 grid 的 clearfix 与 HTML5 Boilerplate 的 clearfix - 有什么区别? 这是在 Nathan Smith 的 960 网格的 css 中找到的 clea
我想删除我的 D7 主题(MD 照片)中由 clearfix 元素引起的灰线。特别是 div class="wrap clearfix" 元素,它在 body 元素的底部有一条不必要的灰线。 我已经尝
能否请您看一下我的网页(联系页面),让我知道为什么我在 clearfix 类中仍然遇到这个问题?我什至在所有元素上都使用了 clear,但这种情况仍在发生!并且 tghe #bizleft 和 #bi
我有一个包含绝对位置和左右浮动的 div。现在我想在第一个 div 下方放置一张图片。 现在的问题是图像重叠在第一个 div 下方。我希望图像显示在第一个 div 下方而不重叠。 https://js
在我的网站上 http://jonasolaussen.se/?page_id=16如您所见,文字位于页脚下方,如果我做广告 确实会更好就像在其他网站上一样。 谁有解决办法,不胜感激! 最佳答案
我有一个布局,其中边栏是固定的,主要内容容器是流动的。
我一直无法将 clearfix 应用于许多 div,我已经学习了几个教程,找到了 here和 here ,但我的名为 Bar 的 div 仍然不会扩展以容纳 Logo 和导航 div。 这是我的标记,
我为我的网站使用了响应式骨架框架(样板)(您可以从这里获取它:http://www.getskeleton.com/)。 我有 列出具有不同高度的列。要清除嵌套列,CSS 表示我需要将 .clearf
Content 1 Content 2 CSS: .parent { normal styling for pare
考虑这种情况: 有一个内容宽度可变的布局,固定侧边栏 float 到右侧。所述布局的容器正在使用 clearfix 清除右侧 float 在内容 block 内还有另一个 block 做同样的事情。第
这个 ( http://jsfiddle.net/77RRA/1/) 有效,而这个 (http://jsfiddle.net/77RRA/) 无效。 clearfix 不是应该替换行 吗? ? 最佳
我想给#footer 内的元素p 一个top-margin 值,但是clearfix 不起作用,而且margin 一直在其父元素外折叠,为什么?下面的代码,#fotter 和 clearfix 类在代
最后一个问题。我继承的代码如下: .clearfix:after { content: "."; display: block; height: 0; clear: both; visibility:
我是 Bootstrap 的新手,我遇到了 clearfix 的问题。我正在尝试设计一个具有 3 个内容列(可变高度)和第 4 个固定宽度的广告列的网站。
我正在尝试使用 clearfix 而不是清除两者,但由于某种原因它不起作用。我按照教程做了所有的事情。 我应该怎么做才能让它发挥作用? * { margin: 0;
我有以下 HTML 结构: %aside.sidebar %main %article %h2 %aside.picture %img %p %articl
最近我正在查看一些网站的代码,看到每个 上过课clearfix . 在 Google 上快速搜索后,我了解到它有时是针对 IE6 的,但实际上什么是 clearfix? 您能否提供一些带有 clear
我创建了一个html,可以找到http://temp87.web44.net/temp.html .我面临的问题是页脚后的页面底部有一条灰色 strip ,并且该页面未占用 100% 的浏览器空间。
是否有类似 float 和 clearfix 但用于垂直对齐的技术。 我想分隔不同的元素(内联或向左浮动),以便它们始终与顶部或底部对齐。 在此jsFiddle我希望红色和绿色水平对齐。我无法更改 C
我对 clearfix 到底是什么感到有点困惑。一方面,我们遇到零高度 div 的情况,其中 float 元素不占用空间。解决方案是将以下 clearfix 类放在容器上: .clearfix {
我是一名优秀的程序员,十分优秀!