提问者:小点点

如何用自定义类覆盖Bootstrap 3中的表单控件类?


我试图覆盖Bootstrap 3的窗体控制类中的宽度。

片段:

<div class="col-xs-2">
         <label for="input-lastname" class="">Last Name</label>
         <input type="text" name="lastname" class="form-control my-form-inline" id="input-lastname" value="<?php  echo isset($_GET['lastname']) ? $_GET['lastname'] : 'empty';  ?>">
</div>...

我有这个:

.form-control {
    min-width: 0;
    width: 25px;
    color:red;
}

width不起作用,但颜色:红色起作用。使用Chrome中的开发者工具,我看到了。表单控件。表单内联具有宽度:自动。只要我在这些类中取消选中width,我就会得到我的自定义类。

我有我的自定义css作为最后一个文件加载,所以顺序应该是正确的。

我曾经尝试过:

.form-control, .my-form-inline {
    min-width: 0;
    width: 25px;
    color:red;
}

.form-control {
    min-width: 0;
    width: 25px;
    color:red;
}

.form-control, .form-inline, .my-form-inline{
    min-width: 0;
    width: 25px;
    color:red;
}

除了宽度,我似乎可以覆盖所有东西。我的表单的类是form-inline

我曾尝试将表单控件放在带有col-md-2(和xs)的div中,但它似乎只影响标签,而不影响输入。我永远无法覆盖宽度:auto,除非我在HTML中的控件上内联执行它。移除表单控件类也可以像预期的那样获得自定义类。

编辑:不管出于什么原因,表单都会被删除。少混音是赢得风格我加载最后。

编辑:这个问题与我的特异性和Bootstrap的特异性有关。我在标题中有这样的内联:

@media (min-width: 768px) {

    .form-inline .form-control {
      display: inline-block;
      width: auto;
      vertical-align: middle;
    }

    .my-form-inline
    {
        min-width: 0;
        width: 25px;
        color:red;
    }
}

但是宽度仍然被一些我找不到的特异性所覆盖。


共2个答案

匿名用户

尝试添加!重要的宽度属性值为:

.form-control {
    min-width: 0;
    width: 25px !important;
    color:red;
}

匿名用户

.form-inline .my-form-inline
{
    min-width: 0;
    width: 25px;
    color:red;
}

它不需要在正确的@media部分。