使用 css/html 将 svg 图标添加到按钮中?

新手上路,请多包涵

我想让图标显示在按钮标签内,请参见下面的代码:

 #header-search {
  width: 200px;
  background: @header-color;
  color: white;
  font-size: 12pt;
  border: 0px solid;
  outline: 0;
  vertical-align: -50%;
}

#header-search::-webkit-input-placeholder {
  color: white;
}

#search-button {
  background: #FFFFFF;
  vertical-align: -50%;
}

.header-view-logo {
  vertical-align: middle;
}

#search-icon {
  fill: white;
}
 <button id="search-button" />
<svg id="search-icon" class="search-icon" viewBox="0 0 24 24">
    <path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"/>
    <path d="M0 0h24v24H0z" fill="none"/>
</svg>

但是图标只是显示在一个非常大的地方,我怎样才能让它适合按钮?

原文由 Mikael 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 2.5k
2 个回答

不确定按钮是否未关闭,或者只是您将其复制到此处而忘记关闭它。

 #search-button {
  width: 100px;
  height: 50px;
}

#search-button svg {
  width: 25px;
  height: 25px;
}
 <button id="search-button">
    <svg id="search-icon" class="search-icon" viewBox="0 0 24 24">
        <path d="M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19l-4.99-5zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z"/>
        <path d="M0 0h24v24H0z" fill="none"/>
    </svg>
 </button>

原文由 shadeed9 发布,翻译遵循 CC BY-SA 3.0 许可协议

**

这个答案不能解决您的问题,这是将 icon.svg 添加到按钮的另一种方式

**

您可以使用嵌入包含按钮标签:

 <button><embed src="icon.svg" /></button>

原文由 Abdelbasset Belaid 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题