我有一个简单的SVG图像:
<svg width="auto" height="10px" viewBox="0 0 80 20" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<path d="M0 0 H 20 L 10 20 Z" fill="yellow"></path>
<path d="M30 20 H 50 L 40 0 Z" fill="black"></path>
<path d="M60 0 H 80 L 70 20 Z" fill="yellow"></path>
</svg>我不想把它作为一个图像包含进来,而是想用SASS将它内联到一个::before伪元素中:
div:before {
content: str-replace(url('data:image/svg+xml;charset=utf8,%3Csvg width='auto' height='10px' viewBox='0 0 80 20' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cpath d='M0 0 H 20 L 10 20 Z' fill='yellow'%3E%3C/path%3E%3Cpath d='M30 20 H 50 L 40 0 Z' fill='black'%3E%3C/path%3E%3Cpath d='M60 0 H 80 L 70 20 Z' fill='yellow'%3E%3C/path%3E%3C/svg%3E'), "#", "%23");
}https://codepen.io/Deka87/pen/zRMmpr
但是,我在Codepen和我的本地编译器中都收到了错误消息。任何帮助都将不胜感激!
发布于 2018-02-27 21:39:55
试试这个:
div::before {
content: '';
background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20width%3D%22auto%22%20height%3D%2210%22%20viewBox%3D%220%200%2080%2020%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%3E%3Cpath%20d%3D%22M0%200h20L10%2020z%22%20fill%3D%22%23ff0%22/%3E%3Cpath%20d%3D%22M30%2020h20L40%200z%22/%3E%3Cpath%20d%3D%22M60%200h20L70%2020z%22%20fill%3D%22%23ff0%22/%3E%3C/svg%3E');
}我使用http://www.grumpicon.com/这个网站来转换为CSS背景的SVG
https://stackoverflow.com/questions/49009914
复制相似问题