【问题标题】:Dynamically show/hide columns/rows in display: -ms-grid动态显示/隐藏显示中的列/行:-ms-grid
【发布时间】:2013-06-27 16:45:21
【问题描述】:

我有一个使用display: -ms-grid 的类,为了论证,假设它的定义如下:

.gridDiv {

    display: -ms-grid;
    -ms-grid-rows: 1fr;
    -ms-grid-columns: 200px 400px 200px;

}

有没有办法在运行时通过 css 或 js 隐藏我的一个列?我已经隐藏了其中的元素,但我想粉碎 .gridDiv,使其看起来只有两列。

任何想法表示赞赏。

【问题讨论】:

    标签: windows-8 microsoft-metro windows-store-apps winjs


    【解决方案1】:

    这可以在您的 .js 文件中完成。如果需要,需要确保元素在此之后再次布局。

    var gridDiv = this.element.querySelector('.gridDiv');
    var columns = '200px 200px';
    // TODO -  code to compute columns
    gridDiv.style.msGridColumns = columns;
    

    【讨论】:

    • 啊,好吧,所以没有一种简单的方法可以将第 3 列的内容移动到第 2 列,而无需引用第 3 列中的项目并将其 msGridColumn 值从 3 调整为2?
    • 是的。 msGridColumn 需要针对第 3 列到第 2 列中的项目进行调整。需要遍历所有项目并将 3 调整为 2。调整 msGridColumns 不会解决这个问题。
    猜你喜欢
    • 2015-03-01
    • 2011-03-26
    • 2019-10-18
    • 2021-12-21
    • 1970-01-01
    • 1970-01-01
    • 2014-09-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多