Twitter bootstrap Twitter引导navbar固定顶部小屏幕流星补丁
我有一个问题,如本文所述:Twitter bootstrap Twitter引导navbar固定顶部小屏幕流星补丁,twitter-bootstrap,meteor,Twitter Bootstrap,Meteor,我有一个问题,如本文所述: 我不确定如何在Meteor中解决这个问题,因为Meteor似乎在引擎盖下完成了所有这些…我发现这个问题非常有趣,可以找出一些解决方案,并收集一些关于这个问题的基本想法 Meteor在其文档中指出,应用程序的编写方式应使其对文件加载顺序不敏感(请参阅)。虽然这是(理想地)设计和加载JavaScript模块和依赖关系的一个好范例,但它在如何在Bootstrap基础之上定义用户样式时,提出了如何做到最好的问题。 事实上,当谈到css时,顺序很重要,因为特定样式应该覆盖默认
我不确定如何在Meteor中解决这个问题,因为Meteor似乎在引擎盖下完成了所有这些…我发现这个问题非常有趣,可以找出一些解决方案,并收集一些关于这个问题的基本想法 Meteor在其文档中指出,应用程序的编写方式应使其对文件加载顺序不敏感(请参阅)。虽然这是(理想地)设计和加载JavaScript模块和依赖关系的一个好范例,但它在如何在Bootstrap基础之上定义用户样式时,提出了如何做到最好的问题。 事实上,当谈到css时,顺序很重要,因为特定样式应该覆盖默认样式。使用Meteors bootstrap软件包等智能软件包,可以固定地定义
bootstrap.css
和bootstrap\u responsive.css
的加载顺序。这样说来,把它之间的东西“飞行”是不可能的
建议的解决方案:在boostrap/responsive顶部覆盖:
在我看来,最好的做法是定义和加载用户样式,这样在加载所有基础文件后,它们的工作方式才是所需的。例如:
bootstrap-user.css:
把这个放到你的一个用户css文件中,一切都会好起来的。项目根目录中的用户css文件总是在智能包文件之后加载,就像那些由引导包链接的文件一样
好吧,这里是“国际风格”方法
如果你仍然想像中描述的那样(甚至twitter本身也建议)破解它,你可以去写你自己的智能包:
package.js:
而包文件css/bootstrap-pre-responsive.css包含:
body {
padding-top: 60px;
padding-bottom: 40px;
}
或者,您可以跳过使用智能包进行引导集成,而让Meteor收集并加载您的项目资源——Meteor文档的概念部分描述了项目根目录中加载顺序的约定。但是:这意味着以字母顺序命名文件,以反映所需的顺序!(不太优雅)
然而,我个人不喜欢后一种解决问题的方法
最后但并非最不重要的一点:当然,有时这是构建和编译自己的boostrap变体的最佳方式,将所有所需样式缩小到一个文件中
Package.describe({
summary: "UX/UI framework from Twitter - My variant"
});
Package.on_use(function (api) {
api.add_files('css/bootstrap.css', 'client');
api.add_files('css/bootstrap-pre-responsive.css', 'client');
api.add_files('css/bootstrap-responsive.css', 'client');
...
// More resource definitions like glyphicons-halflings go here
...
}
body {
padding-top: 60px;
padding-bottom: 40px;
}