如何更改Bootstrap复选框的大小?

时间:2014-03-30 11:32:20

标签: css twitter-bootstrap checkbox laravel-4 laravel-blade

想知道是否可以通过按钮更改复选框的大小。我希望它更大,所以它很容易按下。现在它看起来像这样:

enter image description here

代码:

 <div class="form-group">
    <label  class="col-md-7 control-label">Kalsiumklorid: </label>
    <div class="col-md-5" >
      {{ Form::checkbox('O_Kals_Klor', 1 , array('class' => 'form-control' ))  }}  
    </div>
  </div>

9 个答案:

答案 0 :(得分:30)

或者您可以使用像素设置样式。

 .big-checkbox {width: 30px; height: 30px;}

答案 1 :(得分:13)

可以在css中使用,但不适用于所有浏览器。

对所有浏览器的影响:

http://www.456bereastreet.com/lab/form_controls/checkboxes/

可能性是带有javascript的自定义复选框:

http://ryanfait.com/resources/custom-checkboxes-and-radio-buttons/

答案 2 :(得分:12)

input[type=checkbox]
{
  /* Double-sized Checkboxes */
  -ms-transform: scale(2); /* IE */
  -moz-transform: scale(2); /* FF */
  -webkit-transform: scale(2); /* Safari and Chrome */
  -o-transform: scale(2); /* Opera */
  padding: 10px;
}

答案 3 :(得分:7)

现在可以为最流行的浏览器实现自定义引导程序复选框。

您可以在GitHub中查看我的Bootstrap-Checkbox项目,其中包含简单的.less file。 MDN中有good article描述了一些技术,其中两个主要是:

  1. 标签重定向点击事件。

    如果Click事件具有for中的<label for="target_id">Text</label> <input id="target_id" type="checkbox" />属性,或者如果它包含Bootstrap案例中的输入,则可以将Click事件重定向到其目标:<label><input type="checkbox" />Text</label>

    这意味着可以在浏览器的一个角落放置标签,点击它,然后标签会将点击事件重定向到位于其他角落的复选框,生成复选框的选中/取消选中操作。

    我们可以隐藏原始复选框,但仍然可以使用从标签中获取点击事件。在标签本身,我们可以使用标签或伪元素:before :after来模拟复选框。

  2. 旧浏览器的常规不受支持的标记

    某些旧浏览器不支持多种CSS功能,例如选择兄弟p+p或特定搜索input[type=checkbox]。根据MDN文章,支持这些功能的浏览器也支持:root CSS选择器,而其他人则不支持。 :root选择器只选择文档的根元素,即HTML页面中的html。因此,可以使用:root来回退旧浏览器和原始复选框。

    最终代码段:

  3. :root {
      /* larger checkbox */
    }
    :root label.checkbox-bootstrap input[type=checkbox] {
      /* hide original check box */
      opacity: 0;
      position: absolute;
      /* find the nearest span with checkbox-placeholder class and draw custom checkbox */
      /* draw checkmark before the span placeholder when original hidden input is checked */
      /* disabled checkbox style */
      /* disabled and checked checkbox style */
      /* when the checkbox is focused with tab key show dots arround */
    }
    :root label.checkbox-bootstrap input[type=checkbox] + span.checkbox-placeholder {
      width: 14px;
      height: 14px;
      border: 1px solid;
      border-radius: 3px;
      /*checkbox border color*/
      border-color: #737373;
      display: inline-block;
      cursor: pointer;
      margin: 0 7px 0 -20px;
      vertical-align: middle;
      text-align: center;
    }
    :root label.checkbox-bootstrap input[type=checkbox]:checked + span.checkbox-placeholder {
      background: #0ccce4;
    }
    :root label.checkbox-bootstrap input[type=checkbox]:checked + span.checkbox-placeholder:before {
      display: inline-block;
      position: relative;
      vertical-align: text-top;
      width: 5px;
      height: 9px;
      /*checkmark arrow color*/
      border: solid white;
      border-width: 0 2px 2px 0;
      /*can be done with post css autoprefixer*/
      -webkit-transform: rotate(45deg);
      -moz-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
      -o-transform: rotate(45deg);
      transform: rotate(45deg);
      content: "";
    }
    :root label.checkbox-bootstrap input[type=checkbox]:disabled + span.checkbox-placeholder {
      background: #ececec;
      border-color: #c3c2c2;
    }
    :root label.checkbox-bootstrap input[type=checkbox]:checked:disabled + span.checkbox-placeholder {
      background: #d6d6d6;
      border-color: #bdbdbd;
    }
    :root label.checkbox-bootstrap input[type=checkbox]:focus:not(:hover) + span.checkbox-placeholder {
      outline: 1px dotted black;
    }
    :root label.checkbox-bootstrap.checkbox-lg input[type=checkbox] + span.checkbox-placeholder {
      width: 26px;
      height: 26px;
      border: 2px solid;
      border-radius: 5px;
      /*checkbox border color*/
      border-color: #737373;
    }
    :root label.checkbox-bootstrap.checkbox-lg input[type=checkbox]:checked + span.checkbox-placeholder:before {
      width: 9px;
      height: 15px;
      /*checkmark arrow color*/
      border: solid white;
      border-width: 0 3px 3px 0;
    }
    <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"/>
    <p>
     Original checkboxes:
    </p>
    <div class="checkbox">
          <label class="checkbox-bootstrap">                                        
              <input type="checkbox">             
              <span class="checkbox-placeholder"></span>           
              Original checkbox
          </label>
     </div>
     <div class="checkbox">
          <label class="checkbox-bootstrap">                                        
              <input type="checkbox" disabled>             
              <span class="checkbox-placeholder"></span>           
              Original checkbox disabled
          </label>
     </div>
     <div class="checkbox">
          <label class="checkbox-bootstrap">                                        
              <input type="checkbox" checked>             
              <span class="checkbox-placeholder"></span>           
              Original checkbox checked
          </label>
     </div>
      <div class="checkbox">
          <label class="checkbox-bootstrap">                                        
              <input type="checkbox" checked disabled>             
              <span class="checkbox-placeholder"></span>           
              Original checkbox checked and disabled
          </label>
     </div>
     <div class="checkbox">
          <label class="checkbox-bootstrap checkbox-lg">                           
              <input type="checkbox">             
              <span class="checkbox-placeholder"></span>           
              Large checkbox unchecked
          </label>
     </div>
      <br/>
    <p>
     Inline checkboxes:
    </p>
    <label class="checkbox-inline checkbox-bootstrap">
      <input type="checkbox">
      <span class="checkbox-placeholder"></span>
      Inline 
    </label>
    <label class="checkbox-inline checkbox-bootstrap">
      <input type="checkbox" disabled>
      <span class="checkbox-placeholder"></span>
      Inline disabled
    </label>
    <label class="checkbox-inline checkbox-bootstrap">
      <input type="checkbox" checked disabled>
      <span class="checkbox-placeholder"></span>
      Inline checked and disabled
    </label>
    <label class="checkbox-inline checkbox-bootstrap checkbox-lg">
      <input type="checkbox" checked>
      <span class="checkbox-placeholder"></span>
      Large inline checked
    </label>

答案 4 :(得分:1)

我已经将这个库用于成功

http://plugins.krajee.com/checkbox-x

它需要jQuery和bootstrap 3.x

在此处下载邮箱:https://github.com/kartik-v/bootstrap-checkbox-x/zipball/master

将zip的内容放在项目的文件夹中

在标题中弹出所需的库

<link href="http://netdna.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet">
<link href="path/to/css/checkbox-x.min.css" media="all" rel="stylesheet" type="text/css" />
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.12.3/jquery.min.js"></script>
<script src="path/to/js/checkbox-x.min.js" type="text/javascript"></script>

使用data-size =“xl”将数据控件添加到元素,以更改此处显示的大小http://plugins.krajee.com/cbx-sizes-demo

<label for="element_id">CheckME</label>
<input type="checkbox" name="my_element" id="element_id" value="1" data-toggle="checkbox-x" data-three-state="false" data-size="xl"/>

如果您浏览插件网站,还有许多其他功能。

答案 5 :(得分:1)

我只使用&#34;保存缩放&#34;,例如:

.my_checkbox {
    width:5vw;
    height:5vh;
}

答案 6 :(得分:1)

<div id="rr-element">
   <label for="rr-1">
      <input type="checkbox" value="1" id="rr-1" name="rr[]">
      Value 1
   </label>
</div>
//do this on the css
div label input { margin-right:100px; }

答案 7 :(得分:1)

以下在 bootstrap 4 中有效,在 CSS、移动设备中显示良好,并且标签间距没有问题。

enter image description here

CSS

.checkbox-lg .custom-control-label::before, 
.checkbox-lg .custom-control-label::after {
  top: .8rem;
  width: 1.55rem;
  height: 1.55rem;
}

.checkbox-lg .custom-control-label {
  padding-top: 13px;
  padding-left: 6px;
}


.checkbox-xl .custom-control-label::before, 
.checkbox-xl .custom-control-label::after {
  top: 1.2rem;
  width: 1.85rem;
  height: 1.85rem;
}

.checkbox-xl .custom-control-label {
  padding-top: 23px;
  padding-left: 10px;
}

HTML

<div class="custom-control custom-checkbox checkbox-lg">
      <input type="checkbox" class="custom-control-input" id="checkbox-3">
      <label class="custom-control-label" for="checkbox-3">Large checkbox</label>
    </div>

你也可以通过声明 checkbox-xl

如果 BS 团队的任何人正在阅读这篇文章,如果您开箱即用,那就太好了,我在 BS 5 中也看不到任何内容

source

答案 8 :(得分:0)

使用简单的css

.big-checkbox {width: 1.5rem; height: 1.5rem;top:0.5rem}