Yii2 的 DetailView 中的列宽/分布是由什么设置的?

tre*_*der 2 css yii twitter-bootstrap detailview yii2

相同的视图,相同的DetailView代码,不同的模型,不同的最终结果:

在此输入图像描述

在这种情况下,什么设置列宽?为什么它随着每条记录而变化?这是 Bootstrap 还是 Yii2 的问题?我尝试使用 Chrome 开发工具分析生成的代码,但没有得出结论。正如您所看到的,两列中都有很多空白,因此不应发生列宽移动。

最重要的是——如何防止这种情况发生?如何确保每个视图看起来都完全相同,无论里面打印什么数据DetailView

Jua*_*nio 7

您也可以使用公共属性模板来实现此目的。例如:

<?= DetailView::widget([
   'model' => ...,
   'attributes' => [[...], [...]],
   'template' => "<tr><th style='width: 15%;'>{label}</th><td>{value}.</td></tr>"
]) ?>
Run Code Online (Sandbox Code Playgroud)

在本例中,我有两列,我将第一列的宽度强制为总宽度的 15%。

您还可以使用此方法来应用生成的表格的更多样式。