【发布时间】:2020-11-02 17:41:18
【问题描述】:
这是我一直在玩弄的东西,但现在我正在盖茨比工作的项目中,我需要一些建议。
我正在尝试将 SVG 用作伪背景图像,但到目前为止无济于事。
SCSS 代码:
&:after {
display: block;
content: "";
position: absolute;
background-image: url(../../static/square-hollow-yellow.svg);
width: 150px;
height: 150px;
bottom: -5%;
right: 50px;
}
在检查器中查找背景图像源时返回的内容。
url(data:image/svg+xml;base64,Ym9vawAAAABtYXJrAAAAADgAAAA4AAAAsAMAAAAABBAAAAAAVkcAABAHH+wVMcJBAAAAAP9/AADcAgAABAAAAAMDAAAABAAADAAAAAEBAABBcHBsaWNhdGlvbnMEAAAAAQEAAE1BTVAGAAAAAQEAAGh0ZG9jcwAACAAAAAEBAABhbmdlbC12MgoAAAABAQAAd3AtY29udGVudAAABgAAAAEBAAB0aGVtZXMAABQAAAABAQAAYW5nZWwtc3RhcnRlci1tYXN0ZXIGAAAAAQEAAGFzc2V0cwAABAAAAAEBAABzdmdzGAAAAAEBAABzcXVhcmUtaG9sbG93LXllbGxvdy5zdmcoAAAAAQYAABAAAAAkAAAAMAAAAEAAAABQAAAAZAAAAHQAAACQAAAAoAAAAKwAAAAIAAAABAMAAJ4xhQEDAAAACAAAAAQDAAD6RkABAwAAAAgAAAAEAwAAiEw3AAMAAAAIAAAABAMAACAHJQEDAAAACAAAAAQDAAArByUBAwAAAAgAAAAEAwAALAclAQMAAAAIAAAABAMAAOIZJQEDAAAACAAAAAQDAACO/qEBAwAAAAgAAAAEAwAAUgmiAQMAAAAIAAAABAMAAHAJogEDAAAAKAAAAAEGAAD8AAAADAEAABwBAAAsAQAAPAEAAEwBAABcAQAAbAEAAHwBAACMAQAACAAAAAAEAABBwg04Y7pOQRgAAAABAgAAAQAAAAAAAAAfAgAAAAAAAB8CAAAAAAAAAAAAAAEFAAAIAAAAAQkAAGZpbGU6Ly8vDAAAAAEBAABNYWNpbnRvc2ggSEQIAAAABAMAAACwYG50AAAACAAAAAAEAABBwb7mH7hbnSQAAAABAQAAQkQ3NDhGNkItMkM2NC0zOTZELUJENjMtRTcwNDRCMEM3MTZGGAAAAAECAACBAAAAAQAAAO8TAAABAAAA7xMAAAEAAAABAAAAAQEAAC8AAAAzAAAAAQIAAGRuaWIAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAHN2Zz8/Pz8AAAAAAAAAAADMAAAA/v///wEAAAAAAAAAEAAAAAQQAADMAAAAAAAAAAUQAACcAQAAAAAAABAQAADcAQAAAAAAAEAQAADMAQAAAAAAAAIgAACUAgAAAAAAAAUgAAAEAgAAAAAAABAgAAAUAgAAAAAAABEgAABIAgAAAAAAABIgAAAoAgAAAAAAABMgAAA4AgAAAAAAACAgAAB0AgAAAAAAADAgAAD8AQAAAAAAAAHQAAD8AQAAAAAAABDQAAAEAAAAAAAAABfwAACsAAAAAAAAACLwAACgAgAAAAAAAA==)
任何指针或建议将不胜感激。
更新
项目的文件夹结构
- src
- components
- Heros
- hero-square.js (file of component)
- sass
- main.scss (stylesheet)
- static
- sqaure-hollow-yellow.svg (svg file)
- templates
- angel-in-action-single.js (where the component is being rendered/called)
【问题讨论】:
-
请注意,如果
&:after的容器是static,则伪元素可能位于完全不同的位置,因此不可见。 -
您是否建议将它们放在不同的文件夹中?由于没有“特定”原因它们必须处于静态状态,因此这只是我在文档上阅读的内容。
-
对不起,我把文件夹放在外面,其实是在components目录里面。我会看看在 google 中包含 base64 :)
-
是否有一种可能的解决方法是使用
gatsby-plugin-react-svg或gatsby-plugin-svgr将SVG 渲染为组件,然后通过CSS 将其定位为我想做的事情? -
抱歉,我无法帮助您了解 gatsby,也无法做出反应。肯定会有其他人知道。
标签: javascript css reactjs sass gatsby