贴一个column的设置:
[
'attribute' => 'Name',
'format'=>'html',
'value' => function($data) {
return sprintf(
'<a href="/admin/project/manage?pid=%s">%s</a>',
$data->ID,
$data->Name
);
},
'headerOptions'=>[
'align'=>'right',
],
'contentOptions'=>[
'align'=>'right',
]
]
按照上述设置,contentOptions
是会生效的,也就是说除了公告标题之外,下面的内容都会右对齐。
但是公告标题仍然没有按照配置右对齐,这是因为GridView引用了Bootstrap的CSS所导致的,以我的YII应用为例:
<link href="//cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
在页面header中有这么一行,进去之后可以看到如下内容:
这就是罪魁祸首,调查页面源码可以看到公告标题位于th标签中,因而受到了影响,你的headerOptions
不会生效。
解决方案:
- 用kartik的GridView,Yii中很多前端插件都是kartik做的,非常牛逼的一个人,kartik最新的GridView列参数中有一个专门用来控制列中文本对其的,传送门->链接描述
- 自己写CSS去override掉bootstrap的那个css项
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…