同位素和DOM顺序
Isotope and DOM Order
在此CodePen(http://codepen.io/marcamos/pen/LkZByj)我建立了一个同位素图像网格,可以是正方形、横向或纵向,其中横向是正方形的2倍宽,纵向是正方形的两倍高(CodePen中的HTML、CSS和JS示例位于本文底部。)
不管视口宽度如何,我看到的是一个空白区域,我认为一个正方形会直接移动到该区域。请参阅此屏幕截图:https://dl.dropboxusercontent.com/u/1851858/Grid_Demo.jpg
这让我觉得同位素受到DOM顺序的限制…这很可能是真的,但我认为同位素的砖石布局会忽略这些东西,并填充所有可用空间。我错了吗?
<ul class="grid" id="grid">
<li class="grid__sizer"></li>
<li class="grid__item grid__item--landscape fadable">
<a href="#">
<figure>
<img src="http://noonsharp.design/client/tag/imgs/fpo-square/fpo-2x1.jpg" /> <!-- Landscape -->
<figcaption class="grid__meta">
<span class="grid__project-name">Project Title</span>
<span class="grid__client-name">Client</span>
</figcaption>
</figure>
</a>
</li>
<!-- ...and so on... -->
.grid__item--square,
.grid__item--portrait,
.grid__sizer {
width: 50%;
@media (min-width:$bp-medium) {
width: 33.333%;
}
}
.grid__item--landscape {
width: 100%;
@media (min-width:$bp-medium) {
width: 66.666%;
}
}
<!-- ...and so on... -->
var grid = $('.grid').isotope({
itemSelector: '.grid__item',
percentPosition: true,
masonry: {
columnWidth: '.grid__sizer'
}
});
grid.imagesLoaded().progress(function() {
grid.isotope('layout');
});
我的问题的答案似乎是:使用Packey布局模式,而不是Masonry,直接从Metafizz:https://twitter.com/metafizzyco/status/758733290136178691
如果你访问我在上面发布的CodePen url,你会发现现在一切都如你所愿。
谢谢Metafizz!
相关文章:
- 遍历 DOM 按顺序离开
- 如何反转 JavaScript 变量中 HTML DOM 元素的顺序
- DOM 执行顺序疑惑
- 如何按顺序检索特定 DOM 元素的所有 index() 值
- 使用 Javascript 反向 DOM 节点顺序
- ReactJS:Dom 渲染顺序错误
- 如何在不按 DOM 顺序排序的情况下将 jquery 选择添加到一起
- ractive js :与模板中键部分关联的嵌套对象列表的直接 DOM 插入排序/排序 #each 顺序
- 如何按顺序遍历DOM
- Js 代码和 Jquery 在 Dom 中的 ajax 请求的加载顺序
- DOM操作未按顺序执行
- 访问JS对象中的项,按顺序附加到每个DOM元素
- 使用Jquery/Javascript更改Div顺序(不在DOM中)
- 为什么DOM树顺序优先,深度优先遍历
- JavaScript DOM遍历顺序
- 解释这个DOM遍历顺序
- 使用JavaScript反转添加到DOM中的元素的顺序
- 在流星JS,如何控制Javascript加载顺序相对于DOM加载顺序?为动画
- JQuery,如何按字母顺序重新排列dom元素
- 使用DOM按顺序识别数字