请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

应该如何自己修改ActiveForm的样式?

PHP视图部分

echo $form->field($model, 'parentid')->dropDownList($list,['class'=> 'activeform-dropdownlist']);
echo $form->field($model, 'title')->textInput(['class' => 'activeform-textinput span5']);
CSS部分
/*下拉框*/
.activeform-dropdownlist{
   height: 33px;
   margin: 5px 0 30px 0;
}

/*输入框*/
.activeform-textinput{
   margin: 0 0 100px 0;
}

/*下拉框和输入框共同样式*/
.activeform-dropdownlist, .activeform-textinput {
   font-size: 15px;
}


CSS都是写在同一个文件夹下的,activeform-dropdownlist的样式起作用了,activeform-textinput的样式却没起作用,请问一下老师和各位大神,我应该如何修改这部分呢?我想让字体显示得大一些。

https://img1.sycdn.imooc.com/szimg//58ef3f84000166d911180672.jpg

-----------------------------------------------------------------------------------------------

【4月15号更新】

从图上就可以看到,在textinput中设置的class:

echo $form->field($model, 'title')->textInput(['class' => 'activeform-textinput span5']);

效果被自带的botstrap-overrides.css和botstrap.css覆盖了,完全无法生效...也查不到Yii关于ActiveForm的field样式设置。现在使用了最差的办法,就是改botstrap-overrides.css。希望能有更好的方法来解决这个问题。

https://img1.sycdn.imooc.com/szimg//58f1e5120001b34d09600849.jpg

--------------------------------------------------------------------------------------------------

【4月16日更新-解决方法】

echo $form->field($model, 'title',)->textInput([
   'class' => 'activeform-textinput span5',
   'style' => ['font-size' => '15px'],//在这里可以直接设定输入框的样式
]);

在textInput中设置style属性即可,优先级会是最高的。(虽然每一次都设置会比较麻烦,个人是如果在css的class中可以设置,就用class,不然就用style,可以减少代码编写量,而且方便修改、统一样式)

谢谢各位!

正在回答

2回答

Jason 2017-04-14 17:53:49

你可以直接在ActiveForm加入style属性就行

看options属性 http://www.yiichina.com/doc/api/2.0/yii-widgets-activeform#$options-detail

0 回复 有任何疑惑可以回复我~
  • 提问者 no4990 #1
    这样设置的话,样式设置到最外层的<form>上,无法设置到textinput上,如果是本例的程序,样式会被自带的bootstrap覆盖。起不到效果,最后我只能通过改bootstrap-overrides.css这个文件了...
    回复 有任何疑惑可以回复我~ 2017-04-15 17:13:50
  • Jason 回复 提问者 no4990 #2
    不用,你直接给input做style的设置
    回复 有任何疑惑可以回复我~ 2017-04-15 17:35:34
  • 提问者 no4990 #3
    问题解决了。谢谢老师!
    回复 有任何疑惑可以回复我~ 2017-04-16 02:28:40
Jason 2017-04-13 17:16:01

css文件加载成功了吗

0 回复 有任何疑惑可以回复我~
  • 提问者 no4990 #1
    成功了,因为activeform-dropdownlist和activeform-textinput我是写在同一个CSS文件夹下的,activeform-dropdownlist的样式可以表现,activeform-textinput的却无法表现出来,应该是CSS的优先级不够的原因,所以我想请教一下ActiveForm的textinput如何自定义样式,在YiiChina也查不到。谢谢老师!
    回复 有任何疑惑可以回复我~ 2017-04-14 14:06:54
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号