如何截断特定Yii2 GridView列中的文本并在悬停时显示?

如何截断特定Yii2 GridView列中的文本并在悬停时显示?,gridview,twitter-bootstrap-3,yii2,hover,truncate,Gridview,Twitter Bootstrap 3,Yii2,Hover,Truncate,我使用GridView小部件呈现表格: <?= GridView::widget([ 'dataProvider' => $dataProvider, 'filterModel' => $searchModel, 'columns' => [ 'subject', // ... ], ]) ?> 也许有一种方法可以在不需要StringHelper的情况下使用纯引导实现这一点,但我无法让它工作…实

我使用GridView小部件呈现表格:

<?= GridView::widget([
    'dataProvider' => $dataProvider,
    'filterModel' => $searchModel,   
    'columns' => [
        'subject',
        // ...
    ],
]) ?>

也许有一种方法可以在不需要StringHelper的情况下使用纯引导实现这一点,但我无法让它工作…

实际上有更简单的解决方案。您可以使用纯CSS来实现这一点

.truncate {
   max-width: 150px !important;
   overflow: hidden;
   white-space: nowrap;
   text-overflow: ellipsis;
}

.truncate:hover{
   overflow: visible;
   white-space: normal;
   width: auto;
}
在视图中,只需添加类:

[
  'attribute' => 'subject',
  'contentOptions' => ['class' => 'truncate'],
],
调整最大宽度以满足您的需求,通过css3添加其他效果,您就完成了

[
  'attribute' => 'subject',
  'contentOptions' => ['class' => 'truncate'],
],