html - CSS 菜单图标不可见
问题描述
我从 fontAwesome https://fontawesome.com/icons/cogs?style=solid复制了一个齿轮图标,并希望将此图标覆盖在 svg 上。不幸的是,我看不到图标,而且测试文本也没有按照我的意愿叠加。
有什么提示吗?
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<script src="https://d3js.org/d3.v6.js"></script>
<title>HTML</title>
</head>
<style>
body {
overflow: hidden;
margin: 0px;
}
.canvas {
background-color: rgb(220, 220, 220);
}
.settings-icon {
font-size: 40px;
cursor: pointer;
z-index: 1000;
}
</style>
<body>
<div>
<i id="settings-icon" class="fas fa-cogs">Test</i>
</div>
<svg id="svg"></svg>
<script>
var svg = d3.select("svg")
svg = d3.select("svg")
.attr("class", "canvas")
.attr("width", window.innerWidth)
.attr("height", window.innerHeight)
</script>
</body>
</html>
解决方案
如果要显示 cog 图标,则需要包含 Font Awesome 样式表。
var svg = d3.select("svg")
svg = d3.select("svg")
.attr("class", "canvas")
.attr("width", window.innerWidth)
.attr("height", window.innerHeight)
body {
overflow: hidden;
margin: 0px;
}
.canvas {
background-color: rgb(220, 220, 220);
}
.settings-icon {
font-size: 40px;
cursor: pointer;
z-index: 1000;
}
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.2/css/all.min.css" rel="stylesheet"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/6.5.0/d3.min.js"></script>
<div>
<i id="settings-icon" class="fas fa-cogs">Test</i>
</div>
<svg id="svg"></svg>
推荐阅读
- javascript - 在Javascript中使用双花括号解析字符串模板内的变量
- powershell - Powershell:格式表 | 导出-CSV
- python - Pyspark 从数字列中删除字符串(或估算它们)
- python - 如何通过 HTTP 请求提供临时文件(非静态)?
- c++ - 为什么我不能将 std::copy 与 std::string 一起使用到另一个 std::string?
- python - Python request.get 在特定站点上失败
- apache-spark - spark 2.4.4 在 spark 会话中声明时失败的核心数
- query-builder - Codeigniter 4 未定义索引:user_id
- rust - 什么是需要枚举中的元组变体的独特/特殊情况?
- javascript - 为什么使用装饰器时无法推断字段类型?