记录一个bootstrap的错误,这个错误因为我删除了一个class就导致了页面上显示的错误,这是一个惨痛的教训,特此记录,提醒自己在做前端的修改时,一定要慎之又慎。如果真的要做改动,改完之后也要测一下

这个class是:btn-group

页面上的效果是这样的:点击Edit Columns会出现下面的下拉框列表,再点击一下Edit Columns之后,下拉框列表会消失

这种效果的实现是通过bootstrap来实现的,所用到的代码是这样的一段代码:

<div id="editManageColumns" class="btn-group columnSelecter">
<button id="btnEditManageColumns" type="button" title="Edit Columns" class="btn btn-primary filterbutton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="true">
<span class="glyphicon glyphicon-pencil buttonicon"></span><span class="txt">Edit Columns</span>
</button>
<ul class="dropdown-menu dropdown-menu-right">
<li><a href="#"><input type="checkbox" checked colunmName="email"><span class="dropdownlbl" value="2">Email</span></a></li>
<li><a href="#"><input type="checkbox" checked colunmName="sponsorEmail"><span class="dropdownlbl" value="3">SponsorEmail</span></a></li>
<li><a href="#"><input type="checkbox" checked colunmName="company"><span class="dropdownlbl" value="4">Company</span></a></li>
<li><a href="#"><input type="checkbox" checked colunmName="justification"><span class="dropdownlbl" value="5">Justification</span></a></li>
<li><a href="#"><input type="checkbox" checked colunmName="roles"><span class="dropdownlbl" value="6">Roles</span></a></li>
<li><a href="#"><input type="checkbox" checked colunmName="registerTime"><span class="dropdownlbl" value="7">Register Time</span></a></li>
<li><a href="#"><input type="checkbox" checked colunmName="lastLoginTime"><span class="dropdownlbl" value="8">Last Login Time</span></a></li>
<li><a href="#"><input type="checkbox" checked colunmName="action"><span class="dropdownlbl" value="9">Action</span></a></li>
</ul>
</div>

如果要实现这样toggle的button组合,有几点需要注意的

用到的html结构是这样的:

<div>

  <button></button>

  <ul></ul>

</div>

<div>标签上必须要用btn-group这个class

<button>标签上必须要用data-toggle="dropdown"这个属性

<ul>标签上必须要用dropdown-menu这个class

也就是正确的html结构为:

<div class="btn-group">

  <button data-toggle="dropdown"></button>

  <ul class="dropdown-menu"></ul>

</div>

若要实现上面截图中的效果,就需要用这个结构。

在这个问题中,之所以会删掉btn-group这个class是为了修改另外一个问题,button的右边框圆角效果消失了,为了改这个问题而去掉了btn-group

这个经验教训让我知道了如果以后遇到类似的问题要修改,就应该不要去动之前的页面结构,而是在原来的基础加新的class,在新的class中去修目前遇到的问题!

记录一个bootstrap惨痛的错误的更多相关文章

  1. 记录一个IIS的服务器错误问题的解决方案

    部署一个mvc项目到iis的时候提示有下面这样的错误, 看提示是Microsoft.CodeDom.Providers.DotNetCompilerPlatform,权限问题. 我是第一次遇到,所以只 ...

  2. 记录一个很傻的错误(C++)

    使用的vscode写代码,导入了vector,memory,然后忘了导入string.但是代码中能够提示std::string也就让我忘了导入string.然后就莫名其妙的报错了.找了很久的错.记录下 ...

  3. 记录一个bootstrap因js加载顺序导致的问题(tstrap-table-mobile.min.js:7 Uncaught TypeError: Cannot read property 'defaults' of undefined)

    问题描述: 网上找了会没看到答案,然后看了下源码,发现也没有问题,想到js加载的顺序,改了下,发现问题没了. 正确的顺序: 我之前把 <script src="/js/plugins/ ...

  4. validate[.unobtrusive]和Bootstrap实现tooltip错误提示

    validate[.unobtrusive]和Bootstrap实现tooltip错误提示 类似的文章园子里已有,请看这里,个人感觉稍显复杂,日前也打算写一个简单的给项目用,一些关键点记录于此.最终效 ...

  5. geotrellis使用(七)记录一次惨痛的bug调试经历以及求DEM坡度实践

    眼看就要端午节了,屌丝还在写代码,话说过节也不给轻松,折腾了一天终于解决了一个BUG,并完成了老板安排的求DEM坡度的任务,那么就分两段来表. 一.BUG调试 首先记录一天的BUG调试,简单copy了 ...

  6. 记录一个前端bug的解决过程

    人在江湖飘,哪能不挨刀. 我挨了重重一bug.严格来讲这可能是我职业生涯以来的首个悲惨经历,因为凭我的知识储备和经验,基本上任何可重现的bug都是可解的.然而这个bug却困扰了我三个月之久,它具有以下 ...

  7. bootstrap datetimepicker 位置错误

    bootstrap datetimepicker 位置错误,大致问题跟其他网友描述的一样,页面自动出滚动条,然后datetimepicker飘到页脚,网上的方法都是修改place方法里面的555行左右 ...

  8. 一个null引发的错误

    写程序时,发生一个unrecognized selector的错误,很显然,这是一个经典错误,运行时找不到可调用的方法. 系统提示的reason是 -[NSNull length] 错误 经过查找,原 ...

  9. 一个Bootstrap风格的分页控件

      http://www.cnblogs.com/wangwei123/p/3682626.html 主题 jQueryBootstrap 一个Bootstrap风格的分页控件,对于喜欢Bootstr ...

随机推荐

  1. 实现JWT刷新机制以及让过期时间更精确

      借助accessToken和refreshToken实现   accessToken控制刷新间隔,refreshToken控制最长过期时间   Min过期时间 = refreshToken过期时间 ...

  2. Python-爬虫-Beautifulsoup解析

    简介 Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式.Beautiful Soup会帮你节省 ...

  3. LuoGu P1168 中位数

    题目描述 给出一个长度为 $ N $ 的非负整数序列 $ A_i $ ,对于所有 $ 1 ≤ k ≤ (N + 1) / 2 $ ,输出 $ A_1, A_3, -, A_{2k - 1} $ 的中位 ...

  4. 基于Python Django开发的一个mock

    最近研究了一下python的django框架, 发现这个框架不比Java spring boot差, mock同样一个接口, 代码量少很多, 维护起来也很方便, 废话不多说,直接上代码 1. 安装dj ...

  5. Java桥接模式

    定义:将抽象部分与它的具体实现部分分离,使他们都可以独立的变化 通过组合的方式建立两个类之间联系,而不是继承 类型:结构型 适用场景: 抽象和具体实现之间增加更多的灵活性 一个类存在两个(或多个)独立 ...

  6. ubantu中执行docker免sudo方法

    1.添加用户组,如果已存在则不用设置. sudo groupadd docker 2.将用户加入该 group (docker)内 sudo gpasswd -a ${USER} docker 3.重 ...

  7. Phone List 字典树 OR STL

    Phone List Time Limit: 1 Sec     Memory Limit: 128 Mb     Submitted: 140     Solved: 35 Description ...

  8. linux学习:sed与awk与tr用法整理

    流编辑器:sed 语法:sed [-hnV][-e<script>][-f<script文件>][文本文件] 参数: -e<script>或--expression ...

  9. Sum It Up---(DFS)

    Sum It Up Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total S ...

  10. apt下载open-jdk8报错add-apt-repository: command not found

    今天下载jdk8报错 在Ubuntu下,时不时会有这个错误的. add-apt-repository: command not found sudo apt-get install software- ...