`
beiersi
  • 浏览: 76578 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

使用bootstrap和simple_form生成checkbox跟label对齐的问题

    博客分类:
  • ruby
阅读更多

使用simple_form默认生成的bootstrap wrapper,使用f.input :remember_me, :as => boolean生成的html如下:

 

<div class="control-group boolean optional">
	<label class="boolean optional control-label" for="user_remember_me">记住我</label>
	<div class="controls">
		<input name="user[remember_me]" type="hidden" value="0">
		<label class="checkbox">
			<input class="boolean optional" id="user_remember_me" name="user[remember_me]" type="checkbox" value="1">
		</label>
	</div>
</div>

 由于 隐藏域 在 label class=checkbox 之外,因为隐藏域的css定义,所以 checkbox会比label看起来高。所以需要把隐藏域放到 label class=checkbox 内,这样看上去就高度一致了。

 

修改config/initializers/simple_for.rb,增加以下内容:

 

  # 指定boolean_style为inline,避免生成checkbox外面再套一个label
  config.wrappers :checkbox, :tag => 'div', :class => 'control-group', :error_class => 'error', :boolean_style => :inline do |b|
    b.use :label
    b.wrapper :tag => 'div', :class => 'controls' do |input|
      # 这里自己手工生成一个label,input会生成checkbox和hidden
      input.wrapper :tag => 'label', :class => 'checkbox' do |checkbox|
        checkbox.use :input
      end
    end
  end

 

修改模板文件,指定wrapper

 

<%= f.remember_me, :as => :boolean, :wrapper => :checkbox %>

 

最后生成的html:

 

<div class="control-group boolean optional">
	<label class="boolean optional control-label" for="user_remember_me">记住我</label>
	<div class="controls">
		<label class="checkbox">
			<input name="user[remember_me]" type="hidden" value="0">
			<input class="boolean optional" id="user_remember_me" name="user[remember_me]" type="checkbox" value="1">
		</label>
	</div>
</div>

 

浏览器中查看结果正常了

分享到:
评论

相关推荐

    zend-form-decorators-bootstrap, 用于 Twitter 用户界面 Bootstrap的Zend_Form decorator.zip

    zend-form-decorators-bootstrap, 用于 Twitter 用户界面 Bootstrap的Zend_Form decorator 用于 Twitter Bootstrap的 Zend_Form decorator这是一组 Zend_Form decorator和帮助器,帮助呈现所需的标记,以将任何Zend_...

    simple_form_bootstrap3:带有 simple_form 和 bootstrap3 的 Rails 表单生成器

    带有 simple_form 和 bootstrap3 的 Rails 表单生成器 安装 将此行添加到应用程序的 Gemfile 中: gem 'simple_form_bootstrap3' 或这一行: gem 'simple_form_bootstrap3', git: '...

    Bootstrap4_Theme_Library_v1_axure9 Axure 元件库.zip

    在Axure RP中,Bootstrap4_Theme_Library_v1_axure9元件库是一个专门为Axure RP 9设计的资源包,帮助用户在原型设计过程中便捷地使用Bootstrap的样式和组件。 这个元件库包含了Bootstrap 4的各种组件,如导航栏、...

    bootstrap_4.0_template

    这个资源包"bootstrap_4.0_template"提供了一个基于Bootstrap 4.0的基础模板,适用于快速开发前台和后台界面。下面我们将深入探讨Bootstrap 4.0的核心特性以及如何利用这些资源进行高效开发。 1. **Bootstrap 4.0...

    bootstrap_4_galvin.rplib_bootstrap_

    "bootstrap_4_galvin.rplib" 文件很可能是一个包含这些Bootstrap 4组件和示例的库,便于开发者直接导入和使用。在实际项目中,开发者可以利用这个资源库快速搭建页面结构,减少重复工作,提升开发效率。 总结来说,...

    bootstrap.zip_bootstrap_bootstrap matlab_bootstrap抽样_bootstrap重抽

    Bootstrap是一种统计方法,主要用于处理小样本数据,通过模拟和重抽样的方式来估计...通过运行和分析这些代码,可以深入理解Bootstrap方法的运作机制和优势,同时也能掌握如何在实际问题中应用Bootstrap进行统计推断。

    bootstrap_risingjbc_js_bootstrap_

    总的来说,"bootstrap_risingjbc_js_bootstrap_"提供了一个方便的开发工具,集合了定制的Bootstrap组件和JavaScript功能,可以帮助开发者快速启动和构建现代网页项目。在使用过程中,理解并熟悉Bootstrap的基础知识...

    bootstrap_fileinput_local_zh.js

    fileinput组件是全英文的,在fileinput.js之后引入此文件可解决上传组件显示中文

    PyPI 官网下载 | js.bootstrap_image_gallery-2.8.1.tar.gz

    这个压缩包文件`js.bootstrap_image_gallery-2.8.1.tar.gz`来源于Python Package Index(PyPI),这是一个官方的Python软件包仓库,用于发布和下载Python模块。`js.bootstrap_image_gallery`是其中的一个项目,版本...

    axure原型设计bootstrap元件库 bootstrap_4_galvin

    使用"bootstrap_4_galvin"元件库,设计师可以在Axure中轻松地拖放这些组件,无需从头开始编写样式和交互,大大提高了工作效率。同时,由于元件库遵循Bootstrap 4规范,所创建的原型可以直接与开发人员的代码库对接,...

    bootstrap中文手册_bootstrap教程_bootstrap_

    这个“bootstrap中文手册”提供了详尽的指南,帮助开发者快速掌握Bootstrap的使用方法和特性。 Bootstrap的核心在于其强大的预定义CSS样式,这些样式可以极大地简化网页布局和设计。它包括网格系统、表单、按钮、...

    college_后台bootstrap_bootstrap_

    "college_后台bootstrap_bootstrap_"这个项目标题可能指的是一个基于Bootstrap构建的学院或者教育相关的后台管理系统。由于描述中提到是“一个简单的bootstrap项目,静态网页没有后台”,我们可以理解这是一个面向...

    bootstrap4_for_axure8_9

    Bootstrap 4 是一个广泛使用的前端框架,用于快速构建响应式和移动优先的网站。这个"bootstrap4_for_axure8_9"的压缩包是专为Axure 8和9设计的,提供了丰富的组件集合,帮助原型设计师在创建交互模型时更高效地利用...

    bootstrap-4.6.0_css_

    6. **表单控件**:Bootstrap提供了一套统一的表单样式,包括输入框`input`,选择器`select`,复选框`checkbox`,单选按钮`radio`等,以及表单相关的布局类,如`.form-group`,`.form-control`等。 7. **按钮**:...

    bootstrap tab.zip_bootstrap tab_bootstrap tab_bootstrap 多tab_bo

    Bootstrap 框架是网页开发中的一个流行工具,它提供了丰富的预定义样式、组件和JavaScript插件,大大简化了响应式网页设计的工作。在给定的压缩包 "bootstrap tab.zip" 中,我们可以看到一系列与Bootstrap选项卡...

    Bootstrap_purpose_php_

    总之,"Bootstrap_purpose_php_"压缩包中的"Bootstrap.php"文件可能是为了方便在PHP项目中集成和使用Bootstrap框架。通过理解Bootstrap的核心特性并结合PHP,开发者可以快速构建功能丰富、响应式的Web应用,同时减少...

    bootstrap_css_js_fonts

    这个压缩包"bootstrap_css_js_fonts"包含了Bootstrap的核心元素,主要包括CSS样式表、JavaScript文件以及字体资源。 首先,我们来看看CSS部分。Bootstrap的CSS文件是框架的核心,它们定义了各种UI组件的样式,如...

    简洁simple个人博客bootstrap模板下载_简洁 个人 博客 棕色 标准 bootstrap 响应式 手机 个人主页 s

    简洁simple个人博客bootstrap模板下载_简洁 个人 博客 棕色 标准 bootstrap 响应式 手机 个人主页 s简洁simple个人博客bootstrap模板下载_简洁 个人 博客 棕色 标准 bootstrap 响应式 手机 个人主页 s

    Bootstrap_shengshiqu_省市区

    在“Bootstrap_shengshiqu_省市区”这个项目中,我们看到的是利用Bootstrap来实现一个省市区三级联动菜单的功能。这种功能常见于需要用户选择详细地理位置的网页应用,例如在线购物、招聘网站等。 首先,我们需要...

    bootstrap_form:bootstrap_form gem的官方存储库,这是一个Rails表单生成器,可以使使用Bootstrap 4创建外观精美的表单变得非常容易

    bootstrap_forms的表单助手会生成form字段及其标签以及正确显示Bootstrap所需的所有Bootstrap标记。 bootstrap_form还提供: 默认情况下,对应的字段下方。 您还可以将错误消息放在标签后面,或者关闭bootstrap_...

Global site tag (gtag.js) - Google Analytics