Bootstrap 3.x中使用的.map文件是什么?


443

文件CSS夹中包含两个文件,扩展名为.map。他们是:

bootstrap-theme.css.map
bootstrap.css.map

它们似乎是缩小文件,但我不知道它们的用途。

Answers:


447

使用Chrome DevTools中的CSS预处理器开始

许多开发人员使用CSS预处理程序(例如Sass,Less或Stylus)生成CSS样式表。因为生成了CSS文件,所以直接编辑CSS文件没有帮助。

对于支持CSS源映射的预处理器,DevTools可让您在“源”面板中实时编辑预处理器源文件,并查看结果而无需离开DevTools或刷新页面。当检查其样式由生成的CSS文件提供的元素时,“元素”面板将显示到原始源文件的链接,而不是到生成的.css文件的链接。


11
这个答案解释说,它们与CSS预处理器结合使用-我尚未对此进行过多探讨。谢谢
wetjosh

21
听起来好像这些都是用编程语言调试符号一样,不是吗?
克里斯·西蒙斯

1
我收到js错误,因此在该目录中制作了一个伪文件,以阻止错误显示。

3
@IssaFarax您可以通过ChromeDev工具设置禁用加载源地图。打开DevTools>单击设置齿轮>取消选中启用(JavaScript | CSS)源映射
Giles Wells


173

如果您只想摆脱错误,也可以在bootstrap.css以下位置删除此行:

/*# sourceMappingURL=bootstrap.css.map */

52
或者只是散列#,它会变成一个简单的注释,以备日后使用。
givanse 2014年

1
如果将其从中删除bootstrap.css,是否会导致任何错误或其他原因?
哈里·苏仁

4
不,不是。这只会增加调试难度。
Gfra54 2015年

1
您不希望在生产环境中gulp --production使用此文件,因此请对其进行相应的编译(如果使用gulp,则不会包含该sourceMapping行),并从上载到生产服务器的文件中排除* .map文件。
Curvian Vynes 2015年

2
什么错 这个问题没有提到错误。
bluenote10 '17

70

这些是源地图。在压缩的源文件旁边提供这些文件;Firefox和Chrome中的开发人员工具将使用它们来进行调试,就像未压缩代码一样。


9

引导css可以由Less生成。映射文件的主要目的是在chrome dev工具中将css源代码链接到较少的源代码。就像以前一样。如果我们在chrome dev工具中检查元素。您可以看到css的源代码。但是如果在页面中包含带有引导CSS文件的地图文件。您会看到较少的代码,这些代码适用于您要检查的元素样式。


8

您是否曾经发现自己希望即使合并并精简了客户端代码,也可以保持客户端代码的可读性和更重要的是可调试性,而又不影响性能?好了,现在您可以通过源映射的魔力了。

本文使用一种实用的方法解释了源地图。



5

什么是CSS地图文件?

这是一个JSON格式的文件,将CSS文件链接到其源文件,通常是用预处理器(例如,Less,Sass,Stylus等)编写的文件,这是为了从Web对源文件进行实时调试浏览器。

什么是CSS预处理器?例如:Sass,Less,Stylus

这是一个CSS生成器工具,它使用编程功能来稳定,快速地生成CSS。


1
应该将它们视为文本文件还是字节流?他们应该结束\n吗?
亚伦·弗兰克

@AaronFranke它们是文本文件。我建议您复制.map文件的内容并将其粘贴到 jsonblob.com上,以查看JSON键/值对
Shadi Namrouti

-1

如果您想知道为什么使用Bootstrap 3.x缺少映射文件;确保您安装了正确的版本。我必须加载3.3.7才能获得想要的效果。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.