【问题标题】:Ruby-on-rails Twitter Bootstrap field with error styling带有错误样式的 Ruby-on-rails Twitter Bootstrap 字段
【发布时间】:2013-09-18 00:53:22
【问题描述】:

我使用 Ruby on Rails 4 和 twitter bootstrap 来显示 form_for(twitter bs form_horizontal)。当 rails 将元素包装在 field_with_errors div 中时,下面的样式可以正常工作(标签、输入和提示彼此相邻显示),但提示被放到输入元素下方。

<div class="control-group required">
        <div class="field_with_errors"><label class="control-label" for="lot_commonname_id">Common Name</label></div>
        <div class="controls">
            <div class="field_with_errors"><select id="lot_commonname_id" name="lot[commonname_id]"><option value="">Please select</option>
               <option value="1">x</option>
               <option value="2">y</option>
               <option value="3">z</option>
               </select>
            </div>
            <div class="hint">
               <a href="#" rel="tooltip" data-original-title="xyz test.">
               <i class="icon-info-sign"></i>
               </a>
            </div>
        </div>
</div>

.field_with_errors {
  @extend .control-group;
  @extend .error;
}

.form-horizontal .field_with_errors
{
 margin: 0;
}

.form-horizontal .field_with_errors:before, .form-horizontal .field_with_errors::after 
{
 display: block;
 clear: none;
}

下面的 jsfiddle http://jsfiddle.net/a78B5/6/ 演示问题

【问题讨论】:

    标签: css twitter-bootstrap ruby-on-rails-4


    【解决方案1】:

    Divs 默认为 display:block,因此它自然会下拉到您的输入下方。添加样式以使用 display:inline 或 display:inline-block ,它将移回您的文本框旁边。

    【讨论】:

    • .hint { 显示:内联;左边距:10px; } 没有区别。
    • @user2732663 field_with_errors 样式也是块,而不是 inline-block 这意味着它占据了容器的整个宽度,并将下一个 div(在这种情况下是您的提示)向下推。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-30
    • 1970-01-01
    • 2012-08-11
    • 1970-01-01
    • 2014-04-24
    • 1970-01-01
    相关资源
    最近更新 更多