如何通过CSS使SVG文本路径在div背景图像中工作?
如何通过CSS使SVG文本路径在div背景图像中工作? 此代码在HTML版本中工作,但在CSS中不工作如何通过CSS使SVG文本路径在div背景图像中工作?,css,svg,background-image,Css,Svg,Background Image,如何通过CSS使SVG文本路径在div背景图像中工作? 此代码在HTML版本中工作,但在CSS中不工作 background-image: url("data:image/svg+xml;charset=utf8,%3Csvg id='decorative-text-link' role='link' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 100 10
background-image: url("data:image/svg+xml;charset=utf8,%3Csvg id='decorative-text-link' role='link' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 100 10'%3E %3Cdefs%3E %3Cpath id='squiggle_link_text' style='stroke:none'; fill='none' d='M0,3.5 c 5,0,5,-3,10,-3 s 5,3,10,3 c 5,0,5,-3,10,-3 s 5,3,10,3'/%3E %3C/defs%3E %3Cg style='font-family:Lato; font-size:.1rem'%3E %3Cuse xlink:href='#squiggle_link_text'/%3E %3Ctext%3E %3CtextPath xlink:href='#squiggle_link_text'%3EThere is a link%3C/textPath%3E %3C/text%3E %3C/g%3E %3C/svg%3E");
SVG中有一个语法错误,一个错误;在属性引号外部,而不是内部 您还没有对#字符进行URL编码,这在相应的规范中是无效的,在Firefox中不起作用 我已经在下面纠正了这些问题
html,主体,div{
宽度:100%;
身高:100%;
}
div{
背景图片:url("数据:image/svg+xml;charset=utf8,%3Csvg id='decorative-text-link'role='link'xmlns='1http://www.w3.org/2000/svg'xmlns:xlink='1!'http://www.w3.org/1999/xlink'viewBox='0 100 10'%3E%3Cdefs%3E%3Cpath id='squiggle\u link\u text'style='stroke:none;'fill='none'd='M0,3.5c5,0,5,-3.10,-3s5,0,5,-3,10,-3s5,3,10'/%3E%3C/defs%3E%3Cg样式='font-family:Lato;font-size:.1rem'%3E%3Cuse-xlink:href='%23squiggle\u-link\u-text'/%3E%3E%3C-textPath-xlink:href='%23squiggle\u-link\u-text'%3以太网是链接%3C/文本%3E%3C/g%3E%3C/svg];
}
感谢朗森先生的清晰解释和代码更正!