- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我将 Django 与 Material Design Lite 结合使用。
这是呈现的 HTML 的片段,其中删除了一些卡片以保持其可读性。
<main class="mdl-layout__content">
<div class="mdl-grid">
<!-- Start of card !-->
<div class="mdl-cell mdl-cell--4-col mdl-cell--4-col-phone ">
<div class="stories mdl-card mdl-shadow--2dp">
<div class="mdl-card__title mdl-card--expand">
<h2 class="mdl-card__supporting-text">"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.""Lorem ipsum dolor sit amet, consectetur adipiscing e</h2>
</div>
<div class="mdl-card__title-text">
Tales
</div>
<div class="mdl-card__actions mdl-card--border">
<a class="mdl-button mdl-button--colored mdl-js-button mdl-js-ripple-effect"
href="/1/details">View details</a>
</div>
</div>
</div>
<!-- End of card !-->
<!-- Start of card !-->
<div class="mdl-cell mdl-cell--4-col mdl-cell--4-col-phone ">
<div class="stories mdl-card mdl-shadow--2dp">
<div class="mdl-card__title mdl-card--expand">
<h2 class="mdl-card__supporting-text">"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.""Lorem ipsum dolor sit amet, consectetur adipiscing e</h2>
</div>
<div class="mdl-card__title-text">
fezfez
</div>
<div class="mdl-card__actions mdl-card--border">
<a class="mdl-button mdl-button--colored mdl-js-button mdl-js-ripple-effect"
href="/2/details">View details</a>
</div>
</div>
</div>
<!-- End of card !-->
<!-- Start of card !-->
<div class="mdl-cell mdl-cell--4-col mdl-cell--4-col-phone ">
<div class="stories mdl-card mdl-shadow--2dp">
<div class="mdl-card__title mdl-card--expand">
<h2 class="mdl-card__supporting-text">"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.""Lorem ipsum dolor sit amet, consectetur adipiscing e</h2>
</div>
<div class="mdl-card__title-text">
ffffum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis n
</div>
<div class="mdl-card__actions mdl-card--border">
<a class="mdl-button mdl-button--colored mdl-js-button mdl-js-ripple-effect"
href="/3/details">View details</a>
</div>
</div>
</div>
<!-- End of card !-->
<!-- Start of card !-->
<div class="mdl-cell mdl-cell--4-col mdl-cell--4-col-phone ">
<div class="stories mdl-card mdl-shadow--2dp">
<div class="mdl-card__title mdl-card--expand">
<h2 class="mdl-card__supporting-text">ff</h2>
</div>
<div class="mdl-card__title-text">
fze
</div>
<div class="mdl-card__actions mdl-card--border">
<a class="mdl-button mdl-button--colored mdl-js-button mdl-js-ripple-effect"
href="/34/details">View details</a>
</div>
</div>
</div>
<!-- End of card !-->
</div>
</main>
未编译的 HTML:
<div class="mdl-grid">
{% for story in all_stories_list %}
<!-- Start of card !-->
<div class="mdl-cell mdl-cell--4-col mdl-cell--4-col-phone ">
<div class="stories mdl-card mdl-shadow--2dp">
<div class="mdl-card__title mdl-card--expand">
<h2 class="mdl-card__supporting-text">{{story.story_plot}}</h2>
</div>
<div class="mdl-card__title-text">
{{story.story_name}}
</div>
<div class="mdl-card__actions mdl-card--border">
<a class="mdl-button mdl-button--colored mdl-js-button mdl-js-ripple-effect"
href="/{{story.id}}/details">View details</a>
</div>
</div>
</div>
<!-- End of card !-->
{% endfor %}
这是 CSS:
.stories {
margin-bottom: 20px;
width:auto;
}
.mdl-card__title {
background-color: #156767;
}
.mdl-card__title-text {
padding-top: 5px;
padding-bottom: 5px;
padding-right: 5px;
}
.mdl-card__supporting-text{
color:white;
}
我现在想要完成的是卡片之间的垂直间距相同,因此卡片之间有固定的空白。我将如何做到这一点?我不知道从哪里开始。
最佳答案
虽然我没有通读您的设计,只是想分享一下我是如何做到的。
我刚刚查看了 Google Keep,我相信这就是您要找的东西。主要思想不是将卡片放在表格中,而是放在某些列中。列中的所有卡片实际上具有相同的宽度,那么我们可以将卡片分布在列中。
首先,我的 html 模板:
{% load mod_filter %}
<div class="content" align="center">
{% for counter in "0123" %}
<div class="col" style="width:24%; display:inline-block; vertical-align:top;">
{% for item in result %}
{% ifequal forloop.counter|is_in_col:4 forloop.parentloop.counter %}
<div class="card blue-grey darken-1" style="width: 100%;">
<div class="card-content white-text" align="left">
<span class="card-title">Card Title</span>
<p>{{ item.content }}</p>
</div>
<div class="card-action" align="left">
<a href="#">This is a link</a>
<a href="#">This is a link</a>
</div>
</div>
{% endifequal %}
{% endfor %}
</div>
{% endfor %}
</div>
我使用 is_in_col
过滤器根据索引分配元素。您也需要创建此过滤器。在您的应用中创建一个名为 templatetags
的文件夹,在其中创建一个空的 __init__.py
和 mod_filter.py
。
mod_filter.py
from django import template
register = template.Library()
@register.filter
def is_in_col(num, val):
return (num - 1) % val + 1 # forloop counter starts with 1
确保您的应用程序已放入 settings.py
中的 INSTALLED_APPS
。之后重新启动服务器。更改为其他列数应该很容易。
虽然我的设计存在缺陷。由于它将相同数量的卡片分成每一列,如果其中一些较长并且您不走运,则某些列可能会比其他列长得多。
关于html - 使用卡片设计 Material Design Lite Grid,使其看起来像 Google Keep,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43915658/
我必须使用 gridExtra::grid.arrange 来绘制除彼此之外的多个图,因为我使用该包来创建图的拟合。 我必须使用 grid.arrange 为绘图创建一个标题。 现在我想将两者结合起来
关闭。这个问题是opinion-based .它目前不接受答案。 想改善这个问题吗?更新问题,以便可以通过 editing this post 用事实和引文回答问题. 4年前关闭。 Improve t
在我的农业网格的每一行中。我需要在每一行 ag-grid 中添加 Angular Material 图标按钮。但是,结果只显示了文本按钮。它不会在我的农业网格中显示我的图标按钮。 接下来,我需要在我的
我正在尝试使用 JSON 数据填充 KendoUI 网格,其中服务器返回总行数以及数据,但是我在让 serverPaging 正常工作时遇到了一些问题。我创建并分配网格的数据源如下:
Kendo 网格在网格加载、分页、排序时自动提供自己的加载指示器。它工作正常。 但我不希望显示/隐藏此内置加载指示器。 如何禁用此功能? 请建议我。 谢谢, 维诺特 最佳答案 很简单,只需用 CSS
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 关闭 11 年前。 Improve thi
我正在尝试将noDataMessage设置为dojox.grid.EnhancedGrid,网格工作正常,当商店获取数据时它显示它是行,没有问题,但是我需要当商店没有数据时网格将向我显示个性化消息。我
我的 ExtJS 6 框架有问题。当我使用 Ext.grid.Panel 时它可以工作,但我想使用 Ext.grid.Grid 。 Ext.grid.Panel 和 Ext.grid.Grid 有什么
我看到有几种风格的网格。当记录很大时,人们建议使用 Angular UI Grid 而不是 Datatables。 我认为数据表正在按 1 填充每一行并导致性能问题。 是否无法修复类似于其他网格的数据
是否有人有在 Grid Engine/Sun Grid Engine/Son of Grid Engine 上运行 Docker 的经验,并且能够 monitor the resource used
我一直在阅读 CSS Grid tutorial在 CSS Tricks 中,但一个基本方面让我有点困惑。 似乎有两种方法可以决定一个网格元素跨越多少个单元格: grid-template-area使
调整 ag-Grid 的大小(更改浏览器窗口的大小)并在两个选项卡之间切换时收到以下警告: ag-Grid: tried to call sizeColumnsToFit() but the grid
我正在尝试在 python 2.7 中构建一个 5x5 网格的游戏板,表示为二维列表。我尝试将其写为 board = [["O"]*cols]*rows (cols 和 rows 已声明为 5)但是当
AgGrid 日期筛选器的格式是mm/dd/yyyy,但我想将其更改为yyyy/mm/dd 我该怎么做?日期过滤器是网格的 columnDefinition 的一部分,我在其中使用 filter: '
我有一个基本的 ag-grid 和一些简单的虚拟数据,但它只在我不导入库提供的 .css 文件时显示,即使这样它也显示不正确。 摘 self 的 package.json: "ag-grid": "1
我有一个标准的单元格编辑器,当我处于编辑模式时,单元格编辑器的宽度和高度不是单元格的完整宽度和高度。 我应该覆盖样式还是配置中有任何标志可以关闭此效果? 最佳答案 我有同样的问题。如果您查看 DOM,
概览 以前在 ag-grid 版本 <10.1.0 中,可以通过这种方式在不刷新网格的情况下添加一行: let model: IRowModel = this.gridOptions.api.getM
是否可以合并 wx.grid 中相邻的单元格?我的意思是水平作为一行中的单元格和垂直作为一列中的单元格。 最佳答案 有一种方法可以让文本跨越网格小部件中的多行或多列。 wxPython 演示中有一个名
关闭。这个问题需要更多 focused .它目前不接受答案。 想改进这个问题?更新问题,使其仅关注一个问题 editing this post . 6年前关闭。 Improve this questi
谷歌搜索了很多没有任何结果...按下回车键时网格的默认行为是向下移动光标。但我必须使单元格编辑器在当前单元格中打开。我可以轻松 Hook 关键事件,但如何打开编辑器? 最佳答案 import wx i
我是一名优秀的程序员,十分优秀!