【问题标题】:SVG not displaying in website through cssSVG未通过css显示在网站中
【发布时间】:2014-03-05 06:12:47
【问题描述】:

我正在尝试在我的网站中添加我在inkscape 中制作的 svg 徽标

这是我用来尝试显示它的 css

当我加载页面时,什么都没有出现,但是如果我通过浏览器导航到我的图像文件夹,那么徽标显示正常,那么为什么它不通过 css 显示。

#ind_header_logo{

    width: 400px;
    margin-top: 20px;
    height: 60px;
    margin-left: auto;
    margin-right: auto;

    position: relative;
    background: url(../images/index/logo.svg) no-repeat top left;
    background-size: cover;


}

编辑:刚刚意识到它在 Firefox 中也能正常显示,只是在 chrome 中显示不好

【问题讨论】:

  • 如果没有看到指向该站点的链接或您的文件结构或其他内容,很难说任何具体的内容。您的代码看起来不错。
  • 所有文件结构都必须没问题才能在 Firefox 中运行,这很奇怪为什么 chrome 不显示它。不幸的是,我在本地服务器上工作,所以无法直接向您显示页面
  • 是的,我明白了。我知道大多数现代浏览器绝对支持 SVG 作为背景图像。为了调试,也许尝试将其用作内联 svg 来查看它是否有效?
  • 您可以在开发者控制台中验证 chrome 是否能够加载(或不能)该文件。
  • 具体来说,在 Chrome 开发者工具中:检查控制台是否有错误消息,检查 div 上的样式以确认它正在正确应用背景属性,并检查资源选项卡以确认 svg 是显示为图像资源。如果这些都不是问题,请发布 SVG 代码——Chrome 和 Firefox 在 SVG 的默认大小方面存在一些差异,可能是 Chrome 正在渲染它,但实际图形位于 div 之外(尝试切换到 @987654322 @ 来测试这种可能性)。

标签: css svg


【解决方案1】:

我使用这样的对象解决了它,我知道这样做有一些缺点,但这是唯一有效的方法

<object type="image/svg+xml" data="images/index/logo.svg">

            </object>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-10-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-03
    • 2013-02-17
    • 2014-04-21
    相关资源
    最近更新 更多