- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在尝试创建一个砖石布局,该布局也可以跨越 2 列的元素。到目前为止,我已经做了一个我认为是好的开始。看看:
.wrapper {
display: grid;
grid-gap: 20px;
grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
grid-auto-rows: 5px;
max-width: 600px;
margin: 0 auto;
}
.wrapper div {
background: red;
}
.two {
grid-column-end: span 2;
}
<div class="wrapper">
<div class="one" style="grid-row-end: span 3"></div>
<div class="one" style="grid-row-end: span 3"></div>
<div class="one" style="grid-row-end: span 3"></div>
<div class="two" style="grid-row-end: span 4; background-color: green;"></div>
<div class="one" style="grid-row-end: span 4"></div>
<div class="one" style="grid-row-end: span 2"></div>
<div class="one" style="grid-row-end: span 3"></div>
<div class="one" style="grid-row-end: span 2"></div>
<div class="one" style="grid-row-end: span 5"></div>
</div>
如果你想玩的话,这里有一个 JsFiddle:http://jsfiddle.net/9o4de38u/2/
现在,为了让它起作用,我还有一些 javascript 来确定元素需要跨越多少行。我认为它不相关,因此为了演示目的,我将其省略并在 html 中硬编码了值。
我的问题是,如果您仔细查看我的演示,绿色框跨越 2 列,但是绿色框之前的空间是空的。因为果岭要占2格,前面的元素只占了1格,留了很大的空隙。我想用绿色之后的元素来填补这个空白。但是,我不确定执行此操作的最佳方法是什么。
我的想法是简单地交换 html 中元素的顺序。如果我交换绿色和之前的红色,那么它会很好地填充。问题是如何做到这一点。我目前的想法是使用 Javascript 并使用元素的起始位置来确定是否需要交换。例如,如果绿色框与它之前的红色框具有相同的起始位置,则交换它们。
但我不知道我能在多大程度上依赖它,如果浏览器将其渲染为不同的像素并且将其关闭一个像素,那将没有任何效果。
我的问题是,在您看来,实现我想要的目标的最佳方式是什么?
如果有一个库可以满足我的需求,我也会接受它作为答案。我只是找不到任何可以让一个元素跨越多个列的东西。
最佳答案
Rafaela Ferro 写了一篇 article on medium其中详细介绍了如何使用 CSS 网格创建具有极大灵 active 的砖石样式布局。
正如@Paulie_D 推荐的那样,使用 grid-auto-flow: dense
将告诉网格填充由不均匀布局产生的任何孔洞。但是,由于您设置高度的方式,仍然会出现一些差距。
.wrapper {
display: grid;
grid-gap: 20px;
grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
grid-auto-rows: 5px;
max-width: 600px;
margin: 0 auto;
grid-auto-flow: dense;
}
.wrapper div {
background: red;
}
.two {
grid-column-end: span 2;
}
<div class="wrapper">
<div class="one" style="grid-row-end: span 3"></div>
<div class="one" style="grid-row-end: span 3"></div>
<div class="one" style="grid-row-end: span 3"></div>
<div class="two" style="grid-row-end: span 4; background-color: green;"></div>
<div class="one" style="grid-row-end: span 4"></div>
<div class="one" style="grid-row-end: span 2"></div>
<div class="one" style="grid-row-end: span 3"></div>
<div class="one" style="grid-row-end: span 2"></div>
<div class="one" style="grid-row-end: span 5"></div>
</div>
关于javascript - 可以跨越多列的砌体布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51309836/
我有以下 StackedXYAreaChart: 如何让我的绘图从左到右一直延伸,以便图表和绘图的边界之间没有空白?谢谢! 最佳答案 createStackedAreaChart()方法创建一个具有
当您将一个从 MarshalByRefObject 继承的对象传递给另一个 AppDomain 时,创建它的 AppDomain 所诱导的 GC.Collect() 不会收集该对象,前提是该对象在 G
我有一个使用 DefaultTableModel 的 JTable,它会生成如下表: 但是我很好奇是否有一种好方法可以在交叉的单元格中创建箭头,如下例所示...... 这对我来说似乎很难。有什么方法可
我在一个 div 中有 3 个 span。 Title Someinfomation Toright 为了使 c 类垂直对齐,我必须使用 margin-top 来修复它然而,对于 IE
首先,我完全意识到这个问题已经被问过很多次了,但是我发现的每种方法似乎都已经过时了和/或所引用的链接已不复存在。 所以我想知道是否有一种方法可以使 JTable 中的特定行跨越所有列,就像一个忽略该列
我需要帮助来按照下图获取 Bootstrap 布局。我无法弄清楚如何让黄色条与 Bootstrap 容器的整个宽度一起显示,而不影响列在移动 View 上的堆叠方式(第二张图片)。 所以我不需要在移动
我有一个包含以下数据的集合 _id name type 1 Banana Fruit 2 Tomato Vegetable 3 Carrot Vegetable 4 Tom
我知道有很多这类问题,但我没有看到一个与我的标准足够相似的问题。所以我想请你帮忙。我拥有的字段只是时间类型的开始和结束。我不能在其中涉及任何具体日期。如果时间范围不超过一天的午夜,我将直接比较两个元组
我有一个包含许多数字列的数据框,第一列需要针对第二列进行回归,然后存储 Rsqr 值,然后第一列针对第三列,然后存储 Rsqr 值...等等.这样做直到第 n 列回归到第 1 列。 我希望结果是一个数
标题可能很隐晦,但这是我的问题。 我有一张一天的事件表(行程表)。每个条目(例如参观博物馆)都有 slot_start 和 slot_end 时间列。这是 24 小时格式,例如 13:00:00 -
这对我来说是一个大问题,我正在努力解决不同设备之间的缩放问题。如果我只有一个回显的乘数,那就太好了,除非可以使用 javascript 变量来代替宽度、高度、字体大小等值... 例如,stackexc
不必是表格也可以是 div。 我的图片有一些透明部分需要混合。上半部分需要与下半部分不同的背景颜色混合。 所以在我看来,表格有 2 行,其中一行有一种背景颜色,另一行有另一种背景颜色,但图像跨越两行。
我试图以这样一种方式将 span 与 div 一起使用,即最后一个 span 占据 div 的剩余宽度 dddd: ssss .data{width:100%;display:bl
我在跨共享库边界使用 libstdc++ 的 std::any 实现和 mingw 时偶然发现了一个问题。它会产生一个 std::bad_any_cast 显然不应该(我相信)。 我使用 mingw-
我正在从一张 1bpp 索引图像剪切并粘贴到一张新图像。 一切正常,直到起始像素是 8 的除数。在下面的代码中,步幅等于相对于矩形宽度的值,直到我达到字节边界。那么步幅等于整个页面的宽度。 var c
我目前有以下 SwiftUI View : HStack { ... VStack { TextField { ... } SecureField { ... } Bu
我想构建一个标准的 JTable,但所有行都分布在一个特定的列上。因此该列必须仅包含一个以 JTextPane 作为其渲染器的单元格。您知道任何简单的方法吗? 注意:不需要第三方软件。 谢谢。 最佳答
这个问题在这里已经有了答案: 关闭 12 年前。 Possible Duplicate: Auto-size dynamic text to fill fixed size container. 假
我有一个左浮动的 div 和它跨越左浮动的 div 之后的 div。 看这里http://www.kienitz.it/kienitz_cms/referenzen/ . 我想要这样:http://w
我在水平导航栏上有一个下 zipper 接,如下所示:
我是一名优秀的程序员,十分优秀!