为什么 Twitter Bootstrap 需要多个按钮类?

2023-12-09

使用以下命令制作主按钮Twitter 的 Bootstrap 库,您需要使用两个 CSS 类,如下所示:class="btn btn-primary".

当他们可以让 btn-primary 包含 btn 包含的所有 CSS 时,为什么他们要这样设计 API?纯粹是为了节省代码重复和文件大小,还是有更复杂的原因?


这是因为OOCSS原则。从元素中分离某些样式可以更好地重用代码和样式,并以更简单的方式快速修改 css 中的任何对象。例如,您有您的主要.btn使用默认灰色设置按钮样式的类,因此所有带有.btn类将具有相同的样式,但使用预定义的样式,您可以扩展同一按钮类以支持多种不同的配色方案,而无需编写默认值.btn属性一次又一次,因此更容易维护。如果你看一下 css.btn-warning以及所有其他按钮状态类,您可以看到它们只是定义按钮的颜色和样式,而无需再次重写按钮类;

.btn-warning:hover, .btn-warning:active, .btn-warning.active, .btn-warning.disabled, .btn-warning[disabled] {
    background-color: #F89406;
}

这使得样式表更容易阅读、更短、更简洁。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么 Twitter Bootstrap 需要多个按钮类? 的相关文章

  • 在问题内显示内联块文本

    我一直在尝试显示内联块 如果我没有在 div 中添加任何内容 一切都会很好 但是当我这样做时 div 会折叠起来 我不知道确切的原因 任何想法 https jsfiddle net giancorzo ebqoptbd https jsfi
  • 固定 Div 与静态 div 的滚动条重叠

    我无法按照我想要的方式设计布局 我有一个内容区 content 您可以在示例图像中看到的灰色 里面有一个黄色元素 这个div是position static height 100 现在我有一个 left paneldiv 也 与positi
  • 如何在 CSS 中将 RadioButton 图标样式设置为无(在 Flex 3 中)?

    您可以通过在 CSS 中设置以下值来在 Flex 中设置 RadioButton 的外观 upSkin Embed overSkin Embed ownSkin Embed disabledSkin Embed selectedUpSkin
  • 为什么我的 CSS 属性被覆盖/忽略?

    我对 CSS 层次结构 有一些问题 不确定将其称为层次结构是否正确 我正在尝试设置以下 HTML 的样式 section section
  • 获取异常 jQuery 必须包含在 Bootstrap 的 JavaScript 之前

    我遇到以下异常 bootstrap js 240 Uncaught TypeError Bootstrap 的 JavaScript 需要 jQuery jQuery 必须包含在 Bootstrap 的 JavaScript 之前 在 Ob
  • CSS 边框样式 INSET 或 GROOVE 看起来与 IE9 FF4 或 Safari5 或 Chrome2 非常不同

    抱歉 我是个白痴 但是当我尝试获得某种凹槽效果或插入效果作为边框样式时 我从不同的浏览器中得到了一些非常非常大的视觉结果 使用时 border 5px groove A00 or border 5px inset A00 Firefox 3
  • Chrome 版 Firebug Lite 会破坏悬停效果和鼠标悬停事件

    我有一个奇怪的问题 使用时适用于 Chrome 的 Firebug Lite https chrome google com webstore detail firebug lite for google c bmagokdooijbeeh
  • AngularJS + jQuery 移动

    是否还有其他可能性来设计AngularJS以移动友好的方式应用程序CSS 我正在计划一个移动应用程序 并希望使用 AngularJS 进行逻辑和数据绑定 但我不想自己设计所有内容CSS The AngularJSFAQ说它使用jQuery
  • WordPress 子主题包括包含文件

    我在一家WordPress使用 AMPPS 作为本地主机在我的本地计算机上进行设置 使用 Delta 主题 我创建了一个子主题 delta2 child 初始设置效果很好 但是 我需要更改包含文件夹中名为 home slider php 的
  • jQuery 更改 id!

    我是一个 jQuery 菜鸟 一直在尝试添加一个脚本来更改 div onClick 的 id 这里有一个jsfiddle 示例 http jsfiddle net 475ep function accept div scrollwrap a
  • 使用 CSS 更改 svg 图像的颜色 [重复]

    这个问题在这里已经有答案了 我的 html 文件中有以下 svg 图像 img class svg src my image link svg 现在 我尝试使用以下 css 代码更改颜色 svg path fill black 然而 一切都
  • 将 bootstrap 迁移到 v4 - 弹出窗口不起作用

    我在将 Bootstrap 从版本 3 迁移到版本 4 时遇到问题 问题在于弹出窗口和 popper js 库 每次我将鼠标悬停在某个元素上时 都会收到此错误 未捕获的类型错误 无法读取未定义的属性 indexOf 在 v computeA
  • 如何使用 bootstrap-select 在每个选择选项上添加工具提示

    我正在尝试使用 bootstrap select 将工具提示添加到每个选择选项 当我检查时 似乎 select js 将 select 标签转换为 ul 我不知道这是我的代码不起作用的原因 html div class form group
  • 带条纹的自定义字体 src

    以此作为参考https stripe com docs elements reference stripe elements https stripe com docs elements reference stripe elements
  • 重置 div 内容的 css 样式

    有一个用 css 样式定制的 html 页面 我无法更改此 css 该页面的一个标签被设计为动态 html 数据的容器 我怎样才能 重置 这个div的css设置 页面中定义的css样式对此div的内容没有影响 我只能访问动态 html 并且
  • 如何在同一个

    中设置两种不同的字体大小

    我有一段 HTML 代码 我一直坚持不下去 我怎样才能将这个文本的第一部分的字体大小设置为 20px 以及后面的文本 br 标签字体大小为 15px 或者 如果我做的完全错误 我该如何做而不将它们放在不同的标签中 p Los Santos
  • Opera 中 margin-bottom 的计算方式不同

    我有一个具有相对位置的 div 和一个具有绝对位置的子 div div class out div div div CSS container width 100px height 100px position relative insid
  • 预加载 javascript 和 css 文件

    我目前正在开发一个移动网站 该网站大量使用图像 CSS 和 JavaScript 例如 它使用未压缩的 150KB 的库 我为图像构建了一个预加载器 效果相当好 function loadImages images var sum 0 fo
  • GWT - css 中常量的问题

    我是 GWT 新手 我正在构建一个小型示例应用程序 我有几个 CSS 文件 我能够成功使用 ClientBundle 和 CssResource 将样式分配给 UiBinder 脚本中定义的元素 现在我想更进一步 使用 def css ru
  • HTML/CSS:页面左侧的导航栏

    我发现创建这样具有良好语义的布局很尴尬 左侧是大约 150 像素宽的列 其中包含导航元素 我想将网站这部分的 HTML 放在 HTML 代码的开头 然后有一个简单的方法来强制页面的其余部分不侵占左侧的区域 150 像素列 我考虑过一些选择

随机推荐

  • VBA 用户表单作为输入框

    我有一个用户表单 您可以在其中编辑 Excel 工作表单元格中的文本 由于输入框没有跳过按钮 我创建了一个用户窗体 您可以在整个工作簿中搜索一个值并将其替换为另一个值条目 问题是我想逐个编辑找到的值 而不是同时编辑所有值 我有以下代码 但它
  • 重写equals方法来比较java中的多个字段

    在java中重写equals方法来比较多个字段的最佳方法是什么 例如 我的类中有 4 个对象 o1 o2 o3 o4 我想将它们与传递给 equals 方法的对象进行比较 if o1 null o2 null o3 null o4 null
  • 窗口已经聚焦 - 忽略 com.android.internal.view 的焦点增益

    我见过很多解决方案 但没有一个对我有用 我之前两次遇到过这个问题 我只需要恢复到我的备份代码就可以了 我一直不明白为什么会发生这种情况 有人说这只是一个警告 所以你可以忽略它 但我无法从一种意图切换到另一种意图 这就是确切的情况 我已经制作
  • Logcat 说 - 应用程序可能在其主线程上做了太多工作,并且错误消息显示 - StringtoReal.invalidReal(string.boolean)line:63 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心以获得指导 每当我在模拟器中运行我的应
  • 将文本从 plist 解析为 NSAttributedString

    我正在从 plist 加载文本并将其显示在我的应用程序中 理想情况下 我希望能够指定更复杂的格式 例如斜体 粗体和上标文本 并将其显示在自定义标签中 例如TTT属性标签 是否有任何可用的库可以将给定格式 最好是简单的文本格式 例如 Mark
  • ruby on Rails jquery 以 js 形式提交表单

    我认为有这段代码 br br 当我更改下拉列表中的值时 表单将提交为 Proces
  • C# 中有保证 FIFO 顺序的同步类吗?

    它是什么以及如何使用 我需要它 因为我有一个每秒插入数据库的计时器 并且我在计时器处理程序和主线程之间有一个共享资源 我想保证 如果计时器处理程序在插入过程中花费超过一秒 则应按顺序执行等待的线程 这是我的计时器处理程序的示例代码 priv
  • 使用 ankhsvn 更改颠覆服务器名称

    IT 已将 svn 服务器的位置移至另一个盒子 因此 所有源代码控制路径都需要更改 我找不到在 VS2010 AnkSvn 中执行此操作的位置 更改源代码控制对话框 文件 Subversion 更改源代码控制 列出了 SCC 绑定 URL
  • QT:QTableView 中行的内部拖放,这会更改 QTableModel 中行的顺序

    I want to perform a sort of rows in QTableView so that the underlying TableModel would have its data sorted too 如果我没有记错的
  • C Linux应用程序的带宽限制

    我可以尝试采取哪些方法来遏制send sendto 循环内的函数 我正在为我的网络创建一个端口扫描器 我尝试了两种方法 但它们似乎只在本地工作 当我在我的家用计算机上测试它们时它们工作 但当我尝试在另一台机器上测试它们时 它不想创建适当的节
  • 盗链保护

    我编写了这个简单的代码来防止从我的 php 下载文件中盗链我的文件 if strpos SERVER HTTP REFERER www domain com 0 redirect index php header Location redi
  • jQuery - 将鼠标悬停在父 div 上时播放视频

    我正在创建一个视频库 其中包含悬停时播放短视频的缩略图 我已经能够让它们在将鼠标悬停在视频本身上时播放 但我需要它们在将鼠标悬停在视频的父 div 上时播放 到目前为止 这是我的尝试 HTML div class thumbail div
  • Android:如何与另一个 Activity 进行垂直 Activity 过渡

    我的第一个 Activity 中有一个 ListView 当我点击里面的一个项目时 我启动另一个活动 好吧 但现在我想修改这两个活动之间的转换 Activity1 gt Activity2 Activity2 从下到上的垂直过渡 渐进 当我
  • 为什么调用react setState方法不会立即改变状态?

    我正在阅读Forms的部分reactjs文档并尝试使用此代码来演示onChange usage JSBIN var React require react var ControlledForm React createClass getIn
  • 脚本未在 templateurl 中运行

    这是我的角度 js 文件 测试 js 文件 var app angular module angleapp controller MainController scope function scope scope test hi all d
  • 如何使用占位符获取用户输入?

    我目前正在用 Rust 编写一个简单的记事本应用程序 在主循环期间 要求用户插入 删除或更改行 当用户更改行时 我想预先填充该行的内容 以便用户可以更轻松地编辑行 像这样 下划线代表终端光标 用户选择该行后尚未进行任何输入 Content
  • 将插件保留在项目中和配置文件中之间的区别

    谁能解释一下下面的功能吗 A 实际上下面的代码对我有用 但我不明白为什么我们需要使用下面的Maven 战争插件
  • Android 中是否可以共享音频输入(麦克风)流?

    我正在编写一个作为后台服务运行的应用程序 记录和分析从麦克风录制的音频 当我的应用程序运行时 我无法使用其他使用麦克风的应用程序 例如电话 录音等 我的问题是 有没有办法在 Android 中共享麦克风流 也许通过使用 NDK 如果没有 是
  • 穷人的 C#“词法分析器”

    我正在尝试用 C 编写一个非常简单的解析器 我需要一个词法分析器 它可以让我将正则表达式与标记关联起来 这样它就可以读取正则表达式并返回符号 看来我应该能够使用正则表达式来完成实际的繁重工作 但我看不到一种简单的方法来做到这一点 一方面 正
  • 为什么 Twitter Bootstrap 需要多个按钮类?

    使用以下命令制作主按钮Twitter 的 Bootstrap 库 您需要使用两个 CSS 类 如下所示 class btn btn primary 当他们可以让 btn primary 包含 btn 包含的所有 CSS 时 为什么他们要这样