- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
在我的文档中有一个父 div
固定高度和两列子元素 div
.
<div id="parent">
<div id="child">Text</div>
</div>
仅使用 CSS3,我试图通过以下方式将子项的两列布局与父项的溢出裁剪携手合作:
column-fill: auto
最佳答案
简而言之,在撰写本文时,您无法使用纯 css3 做您想做的事。您想要的目标 API 是 CSS3 Multiple Columns .如果您查看规范中的示例,您会发现它不是使用在给定元素上同时混合平衡和非平衡(顺序)列填充的用例编写的。
编写规范是为了在不同的时间实现这两种技术,因此与您的请求相似(但最终略有不同)的功能。然而,我们可以实现您的目标功能 不过,在 javascript 的帮助下!下面的解释和代码在 Chrome 38 和 FF 33 IE 11 上测试。
如果您想学习一些知识,请查看 mutationobserver这可能会减轻您在评论中的担忧(不知道开发人员动态更改内容)。它允许我们跟踪 dom 更改并适本地设置类。我的第一次尝试成功了,但没有跨浏览器,请在回滚之前查看编辑修订版。
我将把你的三个要求称为状态。
概述
column-fill:auto
)。 column-fill:balance
)。 column-count
是跨越给定父元素的列数。在您的情况下,我们需要 2。column-fill:auto
”)。请参阅下面的代码片段,“
origState
”的 css 规则适用于状态 1 和 2。
column-fill:balance
具有无限的高度,可以滚动。当您想使用顺序填充(即
column-fill:auto
)时,这在 css3 多列规范中是无法实现的。但是,当列中没有设置高度并且高度在父级中设置时(具有适当的滚动 css 值),我们可以实现您想要的。请参阅下面的代码片段,“
overFlowState
”的 css 规则适用于状态 3,注意高度已被移除。
function isOverflowed(element){
return element.scrollHeight > element.clientHeight || element.scrollWidth > element.clientWidth;
}
var elements = document.getElementsByClassName("origState");
for(var i = 0; i < elements.length; i++){
var element = elements[i];
if(isOverflowed(element)){
element.className = "overFlowState";
i--;
}
}
.parent{
overflow-x:hidden;
overflow-y:auto;
width:100%;
height:7em;
}
.origState{
-webkit-column-count:2;
-moz-column-count:2;
column-count:2;
-moz-column-fill:auto;
height:inherit;
}
.overFlowState{
-webkit-column-count:2;
-moz-column-count:2;
column-count:2;
}
<div class="parent">
<div class="origState">
Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.
</div>
</div>
<div class="parent">
<div class="origState">
Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat
</div>
</div>
<div class="parent">
<div class="origState">
Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi. Nam liber tempor cum soluta nobis eleifend option congue nihil imperdiet doming id quod mazim placerat facer possim assum. Typi non habent claritatem insitam; est usus legentis in iis qui facit eorum claritatem. Investigationes demonstraverunt lectores legere me lius quod ii legunt saepius.
Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi. Nam liber tempor cum soluta nobis eleifend option congue nihil imperdiet doming id quod mazim placerat facer possim assum. Typi non habent claritatem insitam; est usus legentis in iis qui facit eorum claritatem. Investigationes demonstraverunt lectores legere me lius quod ii legunt saepius.
</div>
</div>
关于html - CSS3 : clipping parent and two-column child: mixing balanced and non-balanced column-fill,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23721727/
我的收藏具有以下结构 { _id:1, parent_id:0 } { _id:2, parent_id:1 } { _id:3, parent_id:1 } { _id:4, par
到目前为止,我已经尝试过获取该对象的所有子对象,但它只带来了两个子对象。不都是 child 的 child 。我如何获取所有内容并循环获取特定名称对象 Transform[] objChild = g
这个问题不太可能对任何 future 的访客有帮助;它只与一个较小的地理区域、一个特定的时间点或一个非常狭窄的情况相关,通常不适用于全世界的互联网受众。如需帮助使此问题更广泛适用,visit the
我有一个如下表 好吧,在这个表中每个用户都有一个父用户,那么如果我们选择一个用户,那么它的 id 、子代 id 和子代子代 id 应该作为数组返回。我需要一个查询来获取 Rails 中的这些值,而不使
我需要以下代码的帮助: HTML: process process 在点击 td[class=process] 时,我需要 input[name=dat
好的,所以我从中获得了一个 PHP,该 PHP 由依赖于手头动态情况的切换循环传播(我认为)。现在,当我添加一个复选框时,我希望能够使 div 中的第一个复选框具有顶部边框和侧面,没有底部。下面的只有
我正在使用 Swift 和 Sprite Kit。我有一个名为 MrNode 的 SKNode,它有多个 SKSpriteNodes 和 SKNode 子节点。一些SKNode有子节点,而这些子节点也
对不起,这个标题太俗了,但我真的不确定如何解释这个,我是新一代的 SQL 技能由于事件记录模式而退化的人之一! 基本上我在 PostgreSQL 中有三个表 客户端(一个客户端有很多 map ) -
我有这样的简单表格: 编号 parent_id 创建于 具有父/子关系...如果一行是子行,则它有一个 parent_id,否则它的 parent_id 为 0。 现在我想选择所有没有子项(因此本身)
所以我有这样的结构: 我的问题是:如何从每个主题中删除 ID 为 3Q41X2tKUMUmiDjXL1BJon70l8n2 的每个字段。我正在考虑这样的事情: admin.database().ref
这个问题在这里已经有了答案: Change opacity on all elements except hovered one (1 个回答) 关闭 5 个月前。 因此,当鼠标悬停在 child
我需要在 Delphi 5 中创建一个 QuickReport,其布局如下: +================ | Report Header +================ +========
假设我有这样的 html: Some more detailed code.... 我想知道如何在CSS中使用“A
我有一个使用 flexbox 的类似表格的布局: +--------------+---------------+-----------------+---------------+ | 1
我有一个关联,其中 user has_many user_items 和 user_items has_many user_item_images。与一个已经退出的用户。我可以创建一个新的 user_
我想选择无序列表中的前两个列表项。我可以这样选择第一项: ul li:nth-child(1) a { background: none repeat scroll 0 0 beige; }
ul li:first-child a { border-radius: 5px 5px 0 0; } ul li:last-child a { border-radius: 0 0 5p
我有一个这样的表:
或者这些术语用于指代同一事物? 我正在尝试在我的 Win32 应用程序中实现一些显示位图图像的自定义按钮。一个教程指出我应该使用 CreateWindow() 创建子窗口。 但是,我已经从另一个关于创
我想在 jquery 中获取我的 svg 的 id,我尝试了这个 jquery,但它是未定义的。 $(event.target).children('svg').attr("id") Target.e
我是一名优秀的程序员,十分优秀!