css - 如何在 CSS 中使用 SVG Sprite

标签 css svg sprite

我正在我的元素中尝试 SVG sprite,但它没有按预期工作,该 sprite 包含三个图像,如下所示:

enter image description here

Original Image

当我在 CSS 中调用时,它的显示放大了所有三个图像,而不是定义了背景位置的特定图像,似乎我也必须定义一些额外的东西,浏览了一些他们定义了路径的文章,如果是,那么是否需要以及我如何计算这些路径,请帮忙

下面是我尝试过的:

<!doctype html>
<html>
    <head>
        <title>SVG POC</title>
        <style type="text/css">
            a {
                display: inline-block;
            }
            .ico {
                background: transparent url('icons.svg') 0 0 no-repeat; 
                display: inline-block;
            }
            .ico-hotel {
                background-position: 0 0;
                height: 20px;
                width: 20px;
            }
        </style>
    </head>
    <body>          
        <a href="#"><span class="ico ico-hotel"></span></a>     
    </body>
</html>

最佳答案

你的路径已经在svg文件中定义

svg 中设置宽度和高度,它应该可以工作:

添加width="86px"height="20px"

<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="86px" height="20px"
     viewBox="0 0 389.4 91.3" enable-background="new 0 0 389.4 91.3" xml:space="preserve">

关于css - 如何在 CSS 中使用 SVG Sprite ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24757311/

相关文章:

iphone - Cocos2d SpriteSheet 动画

html - 使DIV在中间垂直对齐

css - 使用 CSS 定位 SVG

iphone - iPhone 的 Sprite 表生成器?

javascript - 如何使用 XSLT 查找和组合 XML 源文档不同部分的数据以创建有限元网格的 SVG 可视化

html - 使用 CSS 更改 svg 图像的颜色

javascript - 单击 Canvas 中 Sprite 上的区域

javascript - 选择下一个 <p id ="hg-name"> 中的文本并将其附加到 div

html - 如何覆盖禁用的超链接样式?

CSS - 双/偏移边框,外边框为虚线