我在使用较少的文件时非常陌生,我试图在变量中更改某些常量的值。
我已经尝试了许多类似here或here所述的解决方案。 我正在努力,因为即使我改变了change.less文件,重新定义了我想要更改的常量,浏览器也会显示与前一个变量相同的输出。因为它根本没有改变。
我使用Web Compiler重新编译了我修改过的所有文件。我还尝试使用" Build->重新编译解决方案中的所有文件"菜单项,没有成功。我使用右键菜单项" Web Compiler-> Compile File"将文件添加到compilerconfig.json中。我还尝试直接从Task Runner Explorer运行编译器。一切似乎都在编译过程中起作用,但是当我重新启动网站时(我仍然使用IIS Express来调试网站),这些更改都没有应用。
我试图改变的是常数:
@table-cell-padding: 8px;
@table-condensed-cell-padding: 5px;
将引导表的样式更改为更紧凑的表。我成功模拟了此更改,直接使用Chrome浏览器检查器修改了填充值。我成功完成了它也改变了style.css中的填充,现在在bootstrap.css之前定义了布局:
<link rel="stylesheet" href="~/css/style.css" />
<link rel="stylesheet" href="~/lib/bootstrap/dist/css/bootstrap.css" />
我尝试在单独的(../shared)文件夹中创建一个新的 custom.less ,调用bootstrap variables.less文件,如下面的代码所示。
@import "../less/variables.less";
@table-cell-padding: 5px;
@table-condensed-cell-padding: 2px;
没有成功。
使用Chrome进行调试我发现,无论我做什么,代码检查始终显示常量的前值,即使这些常量也在variables.less文件中也已更改。
任何建议都表示赞赏。
答案 0 :(得分:0)
我刚刚发现问题是另一个bootstrap.css文件(在\ bootstrap \ dist \ css中)隐藏已编译的文件夹(在\ bootstrap \ less中)。
我必须正确设置使用Web编译器生成的compilerconfig.json来覆盖_Layout.cshtml指向的bootstrap.css文件。
因此,我建议为变量创建自定义较少文件的操作如下:
在variables.less文件的相同或并行目录(例如:../shared)中创建custom.less文件;在自定义文件中添加对variables.less文件的引用和常量的新定义(例如:表格的单元格填充);
@table-cell-padding: 5px;
@table-condensed-cell-padding: 2px;
在variables.less
之后不久,在bootstrap.css文件中添加对custom.less文件的引用// Core variables and mixins
@import "variables.less";
@import "../shared/custom.less";
@import "mixins.less";
使用Web编译器编译修改后的较少文件(如果没有,请从Tools-&gt; Extensions and Updates安装);