【问题标题】:How to add border on svg image without overlapping the image itself如何在 svg 图像上添加边框而不重叠图像本身
【发布时间】:2020-06-13 01:50:49
【问题描述】:

搜索了大多数类似的 stackoverflow 帖子,但没有结果,因为我的情况有点不同。

尝试在 svg 图像上添加边框,例如这些图像 here,但无法做到。

我注意到,当我增加边框半径时,它与音乐图标的右上角重叠,所以我希望完整的图标如下图所示。

Here 找到我正在处理的 svg 图片。

我还发现,如果你用文本编辑器打开那个 svg 图片,里面有一些信息; 我尝试更改填充颜色并工作。

请注意是否必须将其转换为 PNG 或使 svg 透明。

尝试了下面的代码,但它不起作用/ASP.Net MVC - CSS

<div>
    <img src="~/Content/images/music.svg" class="image-music" />
</div>

.image-music {
    padding: 0.6vh 1vh 0.6vh 1vh;    
    border-radius: 50%/50%;
    background-color: #FF4E50;
    border: 1vh solid #66f51c;
}

【问题讨论】:

  • 你能告诉我们你为什么拒绝这个问题吗?由于问题仍然存在,无法通过其他类似帖子解决。

标签: html css asp.net-mvc svg


【解决方案1】:

您需要使用容器 div 和弹性框。此外,您需要为父容器和内部图像设置单独的宽度和高度。

示例:https://jsfiddle.net/7rh1bteg/52/

.img-container {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  border: 1px solid #66f51c;
}

.image-music {
  width: 40px;
  height: 40px;
}

<div>
    <div class="img-container">
      <img src="https://svgshare.com/i/Lz2.svg" class="image-music" />
    </div>
</div>

【讨论】:

  • 它仍然与这张图片重叠here
  • 如果您需要进一步的帮助,您需要为该图片发布一个公共网址。我无法访问私有驱动器映像。
  • 我刚改成公开的
  • @Chloe - 谢谢。答案已更新。您需要使用容器 div 和弹性框。此外,您需要考虑父容器和内部图像的单独宽度和高度。
猜你喜欢
  • 2013-01-22
  • 1970-01-01
  • 1970-01-01
  • 2021-07-30
  • 1970-01-01
  • 2019-06-24
  • 2021-04-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多