background 的 position 和 size 未正确解析

有如下 background css:
background: url(image.jpg) left 0px top -9px / 7px 20px no-repeat;

根据文档所述:

The <bg-size> value may only be included immediately after <position>, separated with the '/' character, like this: "center/80%".

可是,据我测试,只支持百分比的写法:
background: left 5% / 15% 60% repeat-x url(image.jpg);

像最开始那种用像素为单位的,最后得到的却是 -9px 除以 7px 后的值:

url(iamge.jpg) left 0px top -1.28571429px 20px no-repeat

请问大家要怎么办?


这个问题出现的原因是我用了 less,当前版本的 less 的默认 math 选项是:always,表示所有加减乘除都会编译。就是因为这个默认配置导致了出现这个问题。
将来 less 的默认 math 选项会改成:parens-division,这样就不会编译普通的 / 号了。

阅读 2.1k
1 个回答

我把你下面的样式:
left 5% / 15% 60%
转换成:
left 5px / 15px 60%
并没有出现问题,2个图片的样子是一样的
你是不是安装了什么插件?或者预编译语言的问题 ... 可以试试找个html页面手动

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题