如果您想让升级路径尽可能轻松,您将如何使用bootstrap 2.3.2编写新应用程序?
例如,我知道span-
和col-
类正在消失,所以我会为每个具有该定义的mixin的类创建一个自定义的less类,或者创建一个宏用我的模板语言输出类名而不是直接使用它。
另外,是否有bootstrap 3迁移指南?我找不到一个。
那么,您将采取哪些措施来缓解升级?
答案 0 :(得分:12)
Bootstrap 3尚未正式发布,但您可以从https://github.com/twitter/bootstrap/archive/3.0.0-wip.zip下载最新代码。您还可以编译文档以检查差异,请参阅:Compile Twitter bootstrap 3 docs (How to)?。
Bootstrap 3 RC1现已发布。
Twitter的Bootstrap 3不会向后兼容版本2,因此迁移在某些方面总是很痛苦。
Twitter的Bootstrap 3将具有流畅的网格(默认情况下),因此它也有助于构建具有流畅布局的版本2模板。 其他重要的变化是:我喜欢你想要一个用于迁移的mixin。 Twitter的Bootstrap 3定义了三个网格:用于电话的小网格(< 480px),用于平板电脑的小网格(< 768px)和用于Destkops的中大网格(> 768px)。这些网格的行类前缀是“.col-”,“。col-sm-”和“.col-lg-”。中大网格将堆叠在768像素以下的屏幕宽度。那么480像素以下的小网格也是如此,小网格从不堆叠。除了总是会堆叠元素的旧手机(移动优先设计)。
Twitter的Bootstrap 2定义了480px,768px,980px和1200px的断点。布局总是低于768px。
因此,“旧”span*
与col-*
或col-lg-*
不同。因此,替换模板中的类名将为您提供更好的结果。但是在查看像http://examples.getbootstrap.com/jumbotron/index.html这样的示例时,您会发现col-lg-*
类代替前span*
类。这样就可以为span *创建一个mixin,其风格与col-lg- *相同。
当您开始迁移时,您还必须决定是否使用响应功能。 Bootstrap 3不再有单独的响应式CSS文件。
没有响应功能 谁不想拥有响应功能必须使用行类的“.col-”前缀。这个网格永远不会堆叠。您还必须将grid-float-breakpoint设置为0.使用Less时,@ grid-float-breakpoint将在variables.less中定义。请记住,表单和模态等其他部分也使用@ grid-float-breakpoint。另见:http://bassjobsen.weblogs.fm/compile-twitters-bootstrap-3-without-responsive-features/
具有响应功能 在大多数情况下,您将使用响应功能。迁移时,您必须在“.col-sm-”和“.col-lg-”之间进行选择,以替换旧的“span”前缀。如上所述的“col-lg-”将使您最有可能获得与以前相同的行为。 “col-lg-”将低于768px。在这种情况下也考虑grid-float-breakpoint。 grid-float-breakpoint默认为768px。
注意:目前TB2.3.2。已在主站点上替换为Bootstrap 3 RC1。所以考虑从一开始就使用TB3。有关网格的更多示例,另请参阅http://examples.getbootstrap.com/grid/。
另请阅读https://stackoverflow.com/a/17977432/1596547的@skelly回答,它提供了两个有用的链接:
http://bootply.com/bootstrap-3-migration-guide
正在开发的Bootstrap迁移工具:https://github.com/iatek/bootstrap-migrate