【发布时间】:2017-01-29 03:47:43
【问题描述】:
如何在 yii2.我想在电脑屏幕上显示gridview的过滤行但在智能手机屏幕中隐藏,也根据上述条件隐藏或显示gridview的标题。这可能吗? 谢谢
【问题讨论】:
如何在 yii2.我想在电脑屏幕上显示gridview的过滤行但在智能手机屏幕中隐藏,也根据上述条件隐藏或显示gridview的标题。这可能吗? 谢谢
【问题讨论】:
我看到了两种可能的选择。
1) 使用 CSS 和媒体查询,例如:
@media (min-width: 0px) and (max-width: 767px) {
.filter {
display: none;
}
}
使用像 Bootstrap 3 这样的框架更容易,只需添加类 hidden-xs(请参阅 official docs 中的更多信息)
这显然只是从视图中隐藏了所需的块,但它仍然被加载并存在于 DOM 中。
2) 如果您甚至不想生成与过滤器相关的 HTML,则可以使用 Mobile_Detect 之类的扩展名。它有Yii2 integration。
使用示例:
<?php if (Yii::$app->devicedetect->isMobile()) { ?>
<div class="filter">...</div>
<?php } ?>
根据您的需要进行选择。由于您还想隐藏 GridView 标头,因此选项 1 更好,因为否则您可能需要子类 GridView 小部件。
【讨论】: