【问题标题】:Am I misundertanding the data-uri function in less我是否误解了 data-uri 函数
【发布时间】:2014-07-18 13:36:41
【问题描述】:

我正在尝试使用 less data-uri 函数

http://lesscss.org/functions/#misc-functions-data-uri

.test {background-image:data-uri("/images/ui-baseline.svg");}

我希望它能编译出 base64 背景图片

.test {   background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMTAgNDAiID48cmVjdCB5PSIzOSIgZmlsbD0iI0ZGODBDQiIgd2lkdGg9IjUiIGhlaWdodD0iMSIvPjxwYXRoIGZpbGw9IiM4MERERkYiIGQ9Ik01LDM1SDB2LTFoNVYzNXogTTUsMzBIMHYtMWg1VjMweiBNNSwyNUgwdi0xaDVWMjV6IE01LDIwSDB2LTFoNVYyMHogTTUsMTVIMHYtMWg1VjE1eiBNNSwxMEgwVjloNVYxMHogTTUsNUgwVjRoNVY1eiIvPjwvc3ZnPg==); }

但是我似乎无法让它工作。 编译后的输出是:

.test {
  background-image: url("/images/ui-baseline.svg");
}

我错过了什么吗? 该函数是否接受根相对路径?

我正在使用考拉,它使用更少的 1.7 更新

谢谢

【问题讨论】:

  • 很可能问题出在路径中(data-uri 如果找不到指定的文件,则会退回到url)。相对路径将是 "images/ui-baseline.svg" 没有前导斜杠。
  • 是相对于less文件还是我的css文件?
  • 默认情况下它是相对于 master less 文件的目录(即你实际编译的那个)。 (另请注意,编译器不知道任何“根相对路径”,因为它不知道您的站点根在编译时的位置)。请参阅related options(但我不记得这些是否会影响data-uri)。
  • 我试过了,但还是不开心。在阅读了更多内容后,我认为 ieCompat 默认是打开的,我检查了 Koala 中的可用文档。它建议更改项目设置(ctrl + 单击/右键单击项目),但我不确定我当时在做什么

标签: svg less data-uri


【解决方案1】:

解决了!

问题是考拉需要在本地安装 less。

https://github.com/oklai/koala/issues/262#issuecomment-49688887

【讨论】:

    猜你喜欢
    • 2021-12-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-08
    • 2022-01-22
    • 1970-01-01
    相关资源
    最近更新 更多